@khanacademy/math-input 2.0.0 → 3.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 (225) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/dist/components/input/math-input.d.ts +1 -1
  3. package/dist/components/input/math-input.js.flow +1 -1
  4. package/dist/components/keypad/button.d.ts +1 -2
  5. package/dist/components/keypad/button.js.flow +1 -1
  6. package/dist/components/keypad/{pre-algebra-page.d.ts → geometry-page/index.d.ts} +1 -1
  7. package/dist/components/keypad/{pre-algebra-page.js.flow → geometry-page/index.js.flow} +1 -1
  8. package/dist/components/keypad/index.d.ts +5 -4
  9. package/dist/components/keypad/index.js.flow +9 -4
  10. package/dist/components/keypad/keypad-page-items.d.ts +8 -2
  11. package/dist/components/keypad/keypad-page-items.js.flow +8 -2
  12. package/dist/components/keypad/{numeric-input-page.d.ts → numbers-page/index.d.ts} +3 -2
  13. package/dist/components/keypad/numbers-page/index.js.flow +17 -0
  14. package/dist/components/keypad/numbers-page/types.d.ts +4 -0
  15. package/dist/components/keypad/numbers-page/types.js.flow +10 -0
  16. package/dist/components/keypad/operators-page/advanced-relations-buttons.d.ts +7 -0
  17. package/dist/components/keypad/{numeric-input-page.js.flow → operators-page/advanced-relations-buttons.js.flow} +3 -4
  18. package/dist/components/keypad/operators-page/basic-relations-buttons.d.ts +7 -0
  19. package/dist/components/keypad/{trigonometry-page.js.flow → operators-page/basic-relations-buttons.js.flow} +3 -6
  20. package/dist/components/keypad/operators-page/index.d.ts +9 -0
  21. package/dist/components/keypad/operators-page/index.js.flow +17 -0
  22. package/dist/components/keypad/operators-page/logarithms-buttons.d.ts +7 -0
  23. package/dist/components/keypad/operators-page/logarithms-buttons.js.flow +12 -0
  24. package/dist/components/keypad/operators-page/pre-algebra-buttons.d.ts +7 -0
  25. package/dist/components/keypad/operators-page/pre-algebra-buttons.js.flow +12 -0
  26. package/dist/components/keypad/operators-page/types.d.ts +6 -0
  27. package/dist/components/keypad/operators-page/types.js.flow +12 -0
  28. package/dist/components/{compute-layout-parameters.d.ts → keypad-legacy/compute-layout-parameters.d.ts} +1 -1
  29. package/dist/components/{compute-layout-parameters.js.flow → keypad-legacy/compute-layout-parameters.js.flow} +1 -1
  30. package/dist/components/{echo-manager.d.ts → keypad-legacy/echo-manager.d.ts} +2 -11
  31. package/dist/components/{echo-manager.js.flow → keypad-legacy/echo-manager.js.flow} +2 -11
  32. package/dist/components/{expression-keypad.d.ts → keypad-legacy/expression-keypad.d.ts} +3 -4
  33. package/dist/components/{expression-keypad.js.flow → keypad-legacy/expression-keypad.js.flow} +3 -4
  34. package/dist/components/{fraction-keypad.d.ts → keypad-legacy/fraction-keypad.d.ts} +2 -2
  35. package/dist/components/{fraction-keypad.js.flow → keypad-legacy/fraction-keypad.js.flow} +2 -2
  36. package/dist/components/{gesture-manager.d.ts → keypad-legacy/gesture-manager.d.ts} +1 -1
  37. package/dist/components/{gesture-manager.js.flow → keypad-legacy/gesture-manager.js.flow} +1 -1
  38. package/dist/components/{gesture-state-machine.d.ts → keypad-legacy/gesture-state-machine.d.ts} +1 -1
  39. package/dist/components/{gesture-state-machine.js.flow → keypad-legacy/gesture-state-machine.js.flow} +1 -1
  40. package/dist/components/{icon.d.ts → keypad-legacy/icon.d.ts} +1 -1
  41. package/dist/components/{icon.js.flow → keypad-legacy/icon.js.flow} +1 -1
  42. package/dist/components/{keypad-button.d.ts → keypad-legacy/keypad-button.d.ts} +4 -4
  43. package/dist/components/{keypad-button.js.flow → keypad-legacy/keypad-button.js.flow} +4 -4
  44. package/dist/components/{keypad-container.d.ts → keypad-legacy/keypad-container.d.ts} +2 -2
  45. package/dist/components/{keypad-container.js.flow → keypad-legacy/keypad-container.js.flow} +3 -3
  46. package/dist/components/{keypad.d.ts → keypad-legacy/keypad.d.ts} +3 -3
  47. package/dist/components/{keypad.js.flow → keypad-legacy/keypad.js.flow} +3 -3
  48. package/dist/components/{multi-symbol-grid.d.ts → keypad-legacy/multi-symbol-grid.d.ts} +1 -1
  49. package/dist/components/{multi-symbol-grid.js.flow → keypad-legacy/multi-symbol-grid.js.flow} +1 -1
  50. package/dist/components/{multi-symbol-popover.d.ts → keypad-legacy/multi-symbol-popover.d.ts} +1 -1
  51. package/dist/components/{multi-symbol-popover.js.flow → keypad-legacy/multi-symbol-popover.js.flow} +1 -1
  52. package/dist/components/{node-manager.d.ts → keypad-legacy/node-manager.d.ts} +3 -4
  53. package/dist/components/{node-manager.js.flow → keypad-legacy/node-manager.js.flow} +3 -5
  54. package/dist/components/{popover-manager.d.ts → keypad-legacy/popover-manager.d.ts} +1 -1
  55. package/dist/components/{popover-manager.js.flow → keypad-legacy/popover-manager.js.flow} +1 -1
  56. package/dist/components/{popover-state-machine.d.ts → keypad-legacy/popover-state-machine.d.ts} +1 -1
  57. package/dist/components/{popover-state-machine.js.flow → keypad-legacy/popover-state-machine.js.flow} +1 -1
  58. package/dist/components/{provided-keypad.d.ts → keypad-legacy/provided-keypad.d.ts} +1 -1
  59. package/dist/components/{provided-keypad.js.flow → keypad-legacy/provided-keypad.js.flow} +1 -1
  60. package/dist/{store → components/keypad-legacy/store}/actions.d.ts +4 -5
  61. package/dist/{store → components/keypad-legacy/store}/actions.js.flow +5 -8
  62. package/dist/{store → components/keypad-legacy/store}/index.d.ts +0 -1
  63. package/dist/{store → components/keypad-legacy/store}/index.js.flow +0 -1
  64. package/dist/components/keypad-legacy/store/shared.d.ts +7 -0
  65. package/dist/components/keypad-legacy/store/shared.js.flow +14 -0
  66. package/dist/{store → components/keypad-legacy/store}/types.d.ts +4 -14
  67. package/dist/{store → components/keypad-legacy/store}/types.js.flow +4 -14
  68. package/dist/components/keypad-legacy/touchable-keypad-button.d.ts +37 -0
  69. package/dist/components/keypad-legacy/touchable-keypad-button.js.flow +64 -0
  70. package/dist/components/{two-page-keypad.d.ts → keypad-legacy/two-page-keypad.d.ts} +0 -1
  71. package/dist/components/{two-page-keypad.js.flow → keypad-legacy/two-page-keypad.js.flow} +0 -1
  72. package/dist/data/key-configs.d.ts +3 -1
  73. package/dist/data/key-configs.js.flow +3 -1
  74. package/dist/data/keys.d.ts +1 -3
  75. package/dist/data/keys.js.flow +0 -2
  76. package/dist/es/index.js +4991 -4299
  77. package/dist/es/index.js.map +1 -1
  78. package/dist/index.d.ts +2 -1
  79. package/dist/index.js +4784 -4073
  80. package/dist/index.js.flow +2 -1
  81. package/dist/index.js.map +1 -1
  82. package/dist/types.d.ts +13 -9
  83. package/dist/types.js.flow +19 -15
  84. package/package.json +1 -1
  85. package/src/components/input/math-input.tsx +1 -1
  86. package/src/components/keypad/button-assets.tsx +65 -40
  87. package/src/components/keypad/button.stories.tsx +61 -13
  88. package/src/components/keypad/button.tsx +1 -1
  89. package/src/components/keypad/{trigonometry-page.tsx → geometry-page/index.tsx} +3 -4
  90. package/src/components/keypad/index.tsx +19 -14
  91. package/src/components/keypad/keypad-page-items.tsx +34 -21
  92. package/src/components/keypad/keypad-pages.stories.tsx +5 -5
  93. package/src/components/keypad/keypad.stories.tsx +75 -17
  94. package/src/components/keypad/{numeric-input-page.tsx → numbers-page/index.tsx} +47 -11
  95. package/src/components/keypad/numbers-page/types.ts +4 -0
  96. package/src/components/keypad/operators-page/advanced-relations-buttons.tsx +32 -0
  97. package/src/components/keypad/operators-page/basic-relations-buttons.tsx +32 -0
  98. package/src/components/keypad/{pre-algebra-page.tsx → operators-page/index.tsx} +25 -29
  99. package/src/components/keypad/operators-page/logarithms-buttons.tsx +32 -0
  100. package/src/components/keypad/operators-page/pre-algebra-buttons.tsx +36 -0
  101. package/src/components/keypad/operators-page/types.ts +6 -0
  102. package/src/components/{__tests__ → keypad-legacy/__tests__}/two-page-keypad.test.tsx +0 -2
  103. package/src/components/{compute-layout-parameters.ts → keypad-legacy/compute-layout-parameters.ts} +2 -3
  104. package/src/components/{corner-decal.tsx → keypad-legacy/corner-decal.tsx} +2 -3
  105. package/src/components/{echo-manager.tsx → keypad-legacy/echo-manager.tsx} +7 -20
  106. package/src/components/{empty-keypad-button.tsx → keypad-legacy/empty-keypad-button.tsx} +2 -2
  107. package/src/components/{expression-keypad.tsx → keypad-legacy/expression-keypad.tsx} +8 -17
  108. package/src/components/{fraction-keypad.tsx → keypad-legacy/fraction-keypad.tsx} +6 -6
  109. package/src/components/{gesture-manager.ts → keypad-legacy/gesture-manager.ts} +2 -2
  110. package/src/components/{gesture-state-machine.ts → keypad-legacy/gesture-state-machine.ts} +1 -1
  111. package/src/components/{icon.tsx → keypad-legacy/icon.tsx} +3 -3
  112. package/src/components/{keypad-button.tsx → keypad-legacy/keypad-button.tsx} +12 -9
  113. package/src/components/{keypad-container.tsx → keypad-legacy/keypad-container.tsx} +6 -6
  114. package/src/components/{keypad.tsx → keypad-legacy/keypad.tsx} +5 -5
  115. package/src/components/{many-keypad-button.tsx → keypad-legacy/many-keypad-button.tsx} +5 -5
  116. package/src/components/{math-icon.tsx → keypad-legacy/math-icon.tsx} +2 -2
  117. package/src/components/{multi-symbol-grid.tsx → keypad-legacy/multi-symbol-grid.tsx} +4 -4
  118. package/src/components/{multi-symbol-popover.tsx → keypad-legacy/multi-symbol-popover.tsx} +3 -4
  119. package/src/components/{navigation-pad.tsx → keypad-legacy/navigation-pad.tsx} +5 -5
  120. package/src/components/{node-manager.ts → keypad-legacy/node-manager.ts} +2 -10
  121. package/src/components/{popover-manager.tsx → keypad-legacy/popover-manager.tsx} +2 -2
  122. package/src/components/{popover-state-machine.ts → keypad-legacy/popover-state-machine.ts} +1 -1
  123. package/src/components/{provided-keypad.tsx → keypad-legacy/provided-keypad.tsx} +4 -5
  124. package/src/{store → components/keypad-legacy/store}/actions.ts +5 -8
  125. package/src/{store → components/keypad-legacy/store}/echo-reducer.ts +2 -3
  126. package/src/{store → components/keypad-legacy/store}/index.ts +4 -11
  127. package/src/{store → components/keypad-legacy/store}/input-reducer.ts +4 -4
  128. package/src/{store → components/keypad-legacy/store}/keypad-reducer.ts +2 -2
  129. package/src/{store → components/keypad-legacy/store}/layout-reducer.ts +3 -3
  130. package/src/{store → components/keypad-legacy/store}/shared.ts +3 -3
  131. package/src/{store → components/keypad-legacy/store}/types.ts +14 -18
  132. package/src/components/{styles.ts → keypad-legacy/styles.ts} +1 -1
  133. package/src/components/{text-icon.tsx → keypad-legacy/text-icon.tsx} +2 -2
  134. package/src/components/{touchable-keypad-button.tsx → keypad-legacy/touchable-keypad-button.tsx} +39 -20
  135. package/src/components/{two-page-keypad.tsx → keypad-legacy/two-page-keypad.tsx} +5 -6
  136. package/src/data/key-configs.ts +10 -15
  137. package/src/data/keys.ts +1 -6
  138. package/src/index.ts +3 -1
  139. package/src/math-input.stories.tsx +2 -2
  140. package/src/types.ts +15 -8
  141. package/tsconfig-build.tsbuildinfo +1 -1
  142. package/dist/components/keypad/trigonometry-page.d.ts +0 -8
  143. package/dist/components/touchable-keypad-button.d.ts +0 -30
  144. package/dist/components/touchable-keypad-button.js.flow +0 -35
  145. package/dist/components/velocity-tracker.d.ts +0 -48
  146. package/dist/components/velocity-tracker.js.flow +0 -54
  147. package/dist/store/pager-reducer.d.ts +0 -4
  148. package/dist/store/pager-reducer.js.flow +0 -13
  149. package/dist/store/shared.d.ts +0 -7
  150. package/dist/store/shared.js.flow +0 -14
  151. package/src/components/velocity-tracker.ts +0 -86
  152. package/src/store/pager-reducer.ts +0 -125
  153. /package/dist/components/{corner-decal.d.ts → keypad-legacy/corner-decal.d.ts} +0 -0
  154. /package/dist/components/{corner-decal.js.flow → keypad-legacy/corner-decal.js.flow} +0 -0
  155. /package/dist/components/{empty-keypad-button.d.ts → keypad-legacy/empty-keypad-button.d.ts} +0 -0
  156. /package/dist/components/{empty-keypad-button.js.flow → keypad-legacy/empty-keypad-button.js.flow} +0 -0
  157. /package/dist/components/{many-keypad-button.d.ts → keypad-legacy/many-keypad-button.d.ts} +0 -0
  158. /package/dist/components/{many-keypad-button.js.flow → keypad-legacy/many-keypad-button.js.flow} +0 -0
  159. /package/dist/components/{math-icon.d.ts → keypad-legacy/math-icon.d.ts} +0 -0
  160. /package/dist/components/{math-icon.js.flow → keypad-legacy/math-icon.js.flow} +0 -0
  161. /package/dist/components/{navigation-pad.d.ts → keypad-legacy/navigation-pad.d.ts} +0 -0
  162. /package/dist/components/{navigation-pad.js.flow → keypad-legacy/navigation-pad.js.flow} +0 -0
  163. /package/dist/{store → components/keypad-legacy/store}/echo-reducer.d.ts +0 -0
  164. /package/dist/{store → components/keypad-legacy/store}/echo-reducer.js.flow +0 -0
  165. /package/dist/{store → components/keypad-legacy/store}/input-reducer.d.ts +0 -0
  166. /package/dist/{store → components/keypad-legacy/store}/input-reducer.js.flow +0 -0
  167. /package/dist/{store → components/keypad-legacy/store}/keypad-reducer.d.ts +0 -0
  168. /package/dist/{store → components/keypad-legacy/store}/keypad-reducer.js.flow +0 -0
  169. /package/dist/{store → components/keypad-legacy/store}/layout-reducer.d.ts +0 -0
  170. /package/dist/{store → components/keypad-legacy/store}/layout-reducer.js.flow +0 -0
  171. /package/dist/components/{styles.d.ts → keypad-legacy/styles.d.ts} +0 -0
  172. /package/dist/components/{styles.js.flow → keypad-legacy/styles.js.flow} +0 -0
  173. /package/dist/components/{svg-icon.d.ts → keypad-legacy/svg-icon.d.ts} +0 -0
  174. /package/dist/components/{svg-icon.js.flow → keypad-legacy/svg-icon.js.flow} +0 -0
  175. /package/dist/components/{text-icon.d.ts → keypad-legacy/text-icon.d.ts} +0 -0
  176. /package/dist/components/{text-icon.js.flow → keypad-legacy/text-icon.js.flow} +0 -0
  177. /package/dist/components/{z-indexes.d.ts → keypad-legacy/z-indexes.d.ts} +0 -0
  178. /package/dist/components/{z-indexes.js.flow → keypad-legacy/z-indexes.js.flow} +0 -0
  179. /package/src/components/{__tests__ → keypad-legacy/__tests__}/gesture-state-machine.test.ts +0 -0
  180. /package/src/components/{__tests__ → keypad-legacy/__tests__}/node-manager.test.ts +0 -0
  181. /package/src/components/{iconography → keypad-legacy/iconography}/arrow.js +0 -0
  182. /package/src/components/{iconography → keypad-legacy/iconography}/backspace.js +0 -0
  183. /package/src/components/{iconography → keypad-legacy/iconography}/cdot.js +0 -0
  184. /package/src/components/{iconography → keypad-legacy/iconography}/cos.js +0 -0
  185. /package/src/components/{iconography → keypad-legacy/iconography}/cube-root.js +0 -0
  186. /package/src/components/{iconography → keypad-legacy/iconography}/dismiss.js +0 -0
  187. /package/src/components/{iconography → keypad-legacy/iconography}/divide.js +0 -0
  188. /package/src/components/{iconography → keypad-legacy/iconography}/down.js +0 -0
  189. /package/src/components/{iconography → keypad-legacy/iconography}/equal.js +0 -0
  190. /package/src/components/{iconography → keypad-legacy/iconography}/exp-2.js +0 -0
  191. /package/src/components/{iconography → keypad-legacy/iconography}/exp-3.js +0 -0
  192. /package/src/components/{iconography → keypad-legacy/iconography}/exp.js +0 -0
  193. /package/src/components/{iconography → keypad-legacy/iconography}/frac.js +0 -0
  194. /package/src/components/{iconography → keypad-legacy/iconography}/geq.js +0 -0
  195. /package/src/components/{iconography → keypad-legacy/iconography}/gt.js +0 -0
  196. /package/src/components/{iconography → keypad-legacy/iconography}/index.js +0 -0
  197. /package/src/components/{iconography → keypad-legacy/iconography}/jump-into-numerator.js +0 -0
  198. /package/src/components/{iconography → keypad-legacy/iconography}/jump-out-base.js +0 -0
  199. /package/src/components/{iconography → keypad-legacy/iconography}/jump-out-denominator.js +0 -0
  200. /package/src/components/{iconography → keypad-legacy/iconography}/jump-out-exponent.js +0 -0
  201. /package/src/components/{iconography → keypad-legacy/iconography}/jump-out-numerator.js +0 -0
  202. /package/src/components/{iconography → keypad-legacy/iconography}/jump-out-parentheses.js +0 -0
  203. /package/src/components/{iconography → keypad-legacy/iconography}/left-paren.js +0 -0
  204. /package/src/components/{iconography → keypad-legacy/iconography}/left.js +0 -0
  205. /package/src/components/{iconography → keypad-legacy/iconography}/leq.js +0 -0
  206. /package/src/components/{iconography → keypad-legacy/iconography}/ln.js +0 -0
  207. /package/src/components/{iconography → keypad-legacy/iconography}/log-n.js +0 -0
  208. /package/src/components/{iconography → keypad-legacy/iconography}/log.js +0 -0
  209. /package/src/components/{iconography → keypad-legacy/iconography}/lt.js +0 -0
  210. /package/src/components/{iconography → keypad-legacy/iconography}/minus.js +0 -0
  211. /package/src/components/{iconography → keypad-legacy/iconography}/neq.js +0 -0
  212. /package/src/components/{iconography → keypad-legacy/iconography}/parens.js +0 -0
  213. /package/src/components/{iconography → keypad-legacy/iconography}/percent.js +0 -0
  214. /package/src/components/{iconography → keypad-legacy/iconography}/period.js +0 -0
  215. /package/src/components/{iconography → keypad-legacy/iconography}/plus.js +0 -0
  216. /package/src/components/{iconography → keypad-legacy/iconography}/radical.js +0 -0
  217. /package/src/components/{iconography → keypad-legacy/iconography}/right-paren.js +0 -0
  218. /package/src/components/{iconography → keypad-legacy/iconography}/right.js +0 -0
  219. /package/src/components/{iconography → keypad-legacy/iconography}/sin.js +0 -0
  220. /package/src/components/{iconography → keypad-legacy/iconography}/sqrt.js +0 -0
  221. /package/src/components/{iconography → keypad-legacy/iconography}/tan.js +0 -0
  222. /package/src/components/{iconography → keypad-legacy/iconography}/times.js +0 -0
  223. /package/src/components/{iconography → keypad-legacy/iconography}/up.js +0 -0
  224. /package/src/components/{svg-icon.tsx → keypad-legacy/svg-icon.tsx} +0 -0
  225. /package/src/components/{z-indexes.ts → keypad-legacy/z-indexes.ts} +0 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,25 @@
1
1
  # @khanacademy/math-input
2
2
 
3
+ ## 3.0.0
4
+
5
+ ### Major Changes
6
+
7
+ - ec37eb3d: Export v2 keypad, rename v1 keypad to ProvidedKeypad
8
+
9
+ ### Minor Changes
10
+
11
+ - 46417c53: add division key boolean
12
+ - 97438065: Add prop to Keypad to switch between · and × for multiplication
13
+ - 85d9132a: Added Basic Relations buttons
14
+ - 42297993: Add advanced relations buttons
15
+ - e86cc72f: Keypad API: Button sets on keypad switched to optional booleans. Added all designed button sets as props, but not all are yet implemented.
16
+ - c0a15907: adds logarithm buttons
17
+
18
+ ### Patch Changes
19
+
20
+ - 1ffbe3ef:
21
+ - d9759ea6: Fix dom errors from SVG markup and adjust stories to remove warnings
22
+
3
23
  ## 2.0.0
4
24
 
5
25
  ### Major Changes
@@ -1,5 +1,5 @@
1
1
  import * as React from "react";
2
- import ProvidedKeypad from "../provided-keypad";
2
+ import ProvidedKeypad from "../keypad-legacy/provided-keypad";
3
3
  type Props = {
4
4
  keypadElement: ProvidedKeypad;
5
5
  onBlur: () => void;
@@ -5,7 +5,7 @@
5
5
  * @flow
6
6
  */
7
7
  import * as React from "react";
8
- import ProvidedKeypad from "../provided-keypad";
8
+ import ProvidedKeypad from "../keypad-legacy/provided-keypad";
9
9
  declare type Props = {|
10
10
  keypadElement: ProvidedKeypad,
11
11
  onBlur: () => void,
@@ -1,6 +1,6 @@
1
1
  import * as React from "react";
2
2
  import type { StyleType } from "@khanacademy/wonder-blocks-core";
3
- type Props = {
3
+ export type Props = {
4
4
  onPress: () => void;
5
5
  children: React.ReactNode;
6
6
  style?: StyleType;
@@ -9,4 +9,3 @@ type Props = {
9
9
  export default class Button extends React.Component<Props> {
10
10
  render(): React.ReactNode;
11
11
  }
12
- export {};
@@ -6,7 +6,7 @@
6
6
  */
7
7
  import * as React from "react";
8
8
  import type { StyleType } from "@khanacademy/wonder-blocks-core";
9
- declare type Props = {|
9
+ export type Props = {|
10
10
  onPress: () => void,
11
11
  children: React.Node,
12
12
  style?: StyleType,
@@ -2,7 +2,7 @@ import * as React from "react";
2
2
  type Props = {
3
3
  onClickKey: (keyConfig: string) => void;
4
4
  };
5
- export default class PreAlgebraPage extends React.Component<Props> {
5
+ export default class GeometryPage extends React.Component<Props> {
6
6
  render(): React.ReactNode;
7
7
  }
8
8
  export {};
@@ -8,6 +8,6 @@ import * as React from "react";
8
8
  declare type Props = {|
9
9
  onClickKey: (keyConfig: string) => void,
10
10
  |};
11
- declare export default class PreAlgebraPage extends React.Component<Props> {
11
+ declare export default class GeometryPage extends React.Component<Props> {
12
12
  render(): React.Node;
13
13
  }
@@ -1,10 +1,11 @@
1
1
  import * as React from "react";
2
+ import { NumbersPageOptions } from "./numbers-page/types";
3
+ import { OperatorsButtonSets } from "./operators-page/types";
2
4
  import type { TabbarItemType } from "../tabbar/types";
3
- type Props = {
5
+ export type Props = {
4
6
  onClickKey: (keyConfig: string) => void;
5
- preAlgebra: boolean;
6
- trigonometry: boolean;
7
- };
7
+ trigonometry?: boolean;
8
+ } & OperatorsButtonSets & NumbersPageOptions;
8
9
  type State = {
9
10
  selectedPage: TabbarItemType;
10
11
  };
@@ -5,11 +5,16 @@
5
5
  * @flow
6
6
  */
7
7
  import * as React from "react";
8
+ import { NumbersPageOptions } from "./numbers-page/types";
9
+ import { OperatorsButtonSets } from "./operators-page/types";
8
10
  import type { TabbarItemType } from "../tabbar/types";
9
- declare type Props = {|
10
- onClickKey: (keyConfig: string) => void,
11
- preAlgebra: boolean,
12
- trigonometry: boolean,
11
+ export type Props = {|
12
+ ...{|
13
+ onClickKey: (keyConfig: string) => void,
14
+ trigonometry?: boolean,
15
+ |},
16
+ ...OperatorsButtonSets,
17
+ ...NumbersPageOptions,
13
18
  |};
14
19
  declare type State = {|
15
20
  selectedPage: TabbarItemType,
@@ -5,7 +5,7 @@ type KeypadPageContainerProps = {
5
5
  children: React.ReactNode;
6
6
  };
7
7
  export declare const KeypadPageContainer: ({ children, }: KeypadPageContainerProps) => React.ReactElement;
8
- type KeypadButtonProps = {
8
+ export type KeypadButtonProps = {
9
9
  keyConfig: KeyConfig;
10
10
  tintColor?: string;
11
11
  style?: StyleType;
@@ -24,5 +24,11 @@ type KeypadActionButtonProps = {
24
24
  onClickKey: (keyConfig: string) => void;
25
25
  };
26
26
  export declare const KeypadActionButton: ({ keyConfig, onClickKey, style, }: KeypadActionButtonProps) => React.ReactElement;
27
- export declare const PlaceHolderButton: () => React.ReactElement;
27
+ /**
28
+ * A placeholder button for the keypad. Optional count prop to render multiple
29
+ * buttons. Defaults to 1.
30
+ */
31
+ export declare const PlaceHolderButtons: ({ count, }: {
32
+ count?: number | undefined;
33
+ }) => React.ReactElement;
28
34
  export {};
@@ -13,7 +13,7 @@ declare type KeypadPageContainerProps = {|
13
13
  declare export var KeypadPageContainer: (
14
14
  x: KeypadPageContainerProps
15
15
  ) => React.Element<any>;
16
- declare type KeypadButtonProps = {|
16
+ export type KeypadButtonProps = {|
17
17
  keyConfig: KeyConfig,
18
18
  tintColor?: string,
19
19
  style?: StyleType,
@@ -36,4 +36,10 @@ declare type KeypadActionButtonProps = {|
36
36
  declare export var KeypadActionButton: (
37
37
  x: KeypadActionButtonProps
38
38
  ) => React.Element<any>;
39
- declare export var PlaceHolderButton: () => React.Element<any>;
39
+ /**
40
+ * A placeholder button for the keypad. Optional count prop to render multiple
41
+ * buttons. Defaults to 1.
42
+ */
43
+ declare export var PlaceHolderButtons: (x: {|
44
+ count?: number | void,
45
+ |}) => React.Element<any>;
@@ -1,8 +1,9 @@
1
1
  import * as React from "react";
2
+ import { NumbersPageOptions } from "./types";
2
3
  type Props = {
3
4
  onClickKey: (keyConfig: string) => void;
4
- };
5
- export default class NumericInputPage extends React.Component<Props> {
5
+ } & NumbersPageOptions;
6
+ export default class NumbersPage extends React.Component<Props> {
6
7
  render(): React.ReactNode;
7
8
  }
8
9
  export {};
@@ -0,0 +1,17 @@
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 { NumbersPageOptions } from "./types";
9
+ declare type Props = {|
10
+ ...{|
11
+ onClickKey: (keyConfig: string) => void,
12
+ |},
13
+ ...NumbersPageOptions,
14
+ |};
15
+ declare export default class NumbersPage extends React.Component<Props> {
16
+ render(): React.Node;
17
+ }
@@ -0,0 +1,4 @@
1
+ export type NumbersPageOptions = {
2
+ multiplicationDot?: boolean;
3
+ divisionKey?: boolean;
4
+ };
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Flowtype definitions for data
3
+ * Generated by Flowgen from a Typescript Definition
4
+ * Flowgen v1.21.0
5
+ * @flow
6
+ */
7
+ export type NumbersPageOptions = {|
8
+ multiplicationDot?: boolean,
9
+ divisionKey?: boolean,
10
+ |};
@@ -0,0 +1,7 @@
1
+ import React from "react";
2
+ type Props = {
3
+ onClickKey: (keyConfig: string) => void;
4
+ placeholder?: boolean;
5
+ };
6
+ export declare const AdvancedRelations: ({ onClickKey, placeholder, }: Props) => React.ReactElement;
7
+ export {};
@@ -4,10 +4,9 @@
4
4
  * Flowgen v1.21.0
5
5
  * @flow
6
6
  */
7
- import * as React from "react";
7
+ import React from "react";
8
8
  declare type Props = {|
9
9
  onClickKey: (keyConfig: string) => void,
10
+ placeholder?: boolean,
10
11
  |};
11
- declare export default class NumericInputPage extends React.Component<Props> {
12
- render(): React.Node;
13
- }
12
+ declare export var AdvancedRelations: (x: Props) => React.ReactElement;
@@ -0,0 +1,7 @@
1
+ import React from "react";
2
+ type Props = {
3
+ onClickKey: (keyConfig: string) => void;
4
+ placeholder?: boolean;
5
+ };
6
+ export declare const BasicRelations: ({ onClickKey, placeholder, }: Props) => React.ReactElement;
7
+ export {};
@@ -4,12 +4,9 @@
4
4
  * Flowgen v1.21.0
5
5
  * @flow
6
6
  */
7
- import * as React from "react";
7
+ import React from "react";
8
8
  declare type Props = {|
9
9
  onClickKey: (keyConfig: string) => void,
10
+ placeholder?: boolean,
10
11
  |};
11
- declare export default class TrigonometryInputPage
12
- extends React.Component<Props>
13
- {
14
- render(): React.Node;
15
- }
12
+ declare export var BasicRelations: (x: Props) => React.ReactElement;
@@ -0,0 +1,9 @@
1
+ import * as React from "react";
2
+ import { OperatorsButtonSets } from "./types";
3
+ type Props = {
4
+ onClickKey: (keyConfig: string) => void;
5
+ } & OperatorsButtonSets;
6
+ export default class OperatorsPage extends React.Component<Props> {
7
+ render(): React.ReactNode;
8
+ }
9
+ export {};
@@ -0,0 +1,17 @@
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 { OperatorsButtonSets } from "./types";
9
+ declare type Props = {|
10
+ ...{|
11
+ onClickKey: (keyConfig: string) => void,
12
+ |},
13
+ ...OperatorsButtonSets,
14
+ |};
15
+ declare export default class OperatorsPage extends React.Component<Props> {
16
+ render(): React.Node;
17
+ }
@@ -0,0 +1,7 @@
1
+ import React from "react";
2
+ type Props = {
3
+ onClickKey: (keyConfig: string) => void;
4
+ placeholder?: boolean;
5
+ };
6
+ export declare const Logarithms: ({ onClickKey, placeholder, }: Props) => React.ReactElement;
7
+ export {};
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Flowtype definitions for data
3
+ * Generated by Flowgen from a Typescript Definition
4
+ * Flowgen v1.21.0
5
+ * @flow
6
+ */
7
+ import React from "react";
8
+ declare type Props = {|
9
+ onClickKey: (keyConfig: string) => void,
10
+ placeholder?: boolean,
11
+ |};
12
+ declare export var Logarithms: (x: Props) => React.ReactElement;
@@ -0,0 +1,7 @@
1
+ import React from "react";
2
+ type Props = {
3
+ onClickKey: (keyConfig: string) => void;
4
+ placeholder?: boolean;
5
+ };
6
+ export declare const PreAlgebra: ({ onClickKey, placeholder, }: Props) => React.ReactElement;
7
+ export {};
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Flowtype definitions for data
3
+ * Generated by Flowgen from a Typescript Definition
4
+ * Flowgen v1.21.0
5
+ * @flow
6
+ */
7
+ import React from "react";
8
+ declare type Props = {|
9
+ onClickKey: (keyConfig: string) => void,
10
+ placeholder?: boolean,
11
+ |};
12
+ declare export var PreAlgebra: (x: Props) => React.ReactElement;
@@ -0,0 +1,6 @@
1
+ export type OperatorsButtonSets = {
2
+ preAlgebra?: boolean;
3
+ logarithms?: boolean;
4
+ basicRelations?: boolean;
5
+ advancedRelations?: boolean;
6
+ };
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Flowtype definitions for data
3
+ * Generated by Flowgen from a Typescript Definition
4
+ * Flowgen v1.21.0
5
+ * @flow
6
+ */
7
+ export type OperatorsButtonSets = {|
8
+ preAlgebra?: boolean,
9
+ logarithms?: boolean,
10
+ basicRelations?: boolean,
11
+ advancedRelations?: boolean,
12
+ |};
@@ -18,7 +18,7 @@
18
18
  * to be conservative in our measurements and make things smaller than they
19
19
  * might need to be.
20
20
  */
21
- import { LayoutMode } from "../enums";
21
+ import { LayoutMode } from "../../enums";
22
22
  export declare const computeLayoutParameters: ({ numColumns, numMaxVisibleRows, numPages }: {
23
23
  numColumns: any;
24
24
  numMaxVisibleRows: any;
@@ -4,7 +4,7 @@
4
4
  * Flowgen v1.21.0
5
5
  * @flow
6
6
  */
7
- import { LayoutMode } from "../enums";
7
+ import { LayoutMode } from "../../enums";
8
8
  declare export var computeLayoutParameters: (
9
9
  x: {|
10
10
  numColumns: any,
@@ -2,18 +2,9 @@
2
2
  * A component that renders and animates the selection state effect effect.
3
3
  */
4
4
  import * as React from "react";
5
- import Keys from "../data/keys";
6
- import { EchoAnimationType } from "../enums";
7
- import type { Border, Bound } from "../types";
8
- type EchoPropType = {
9
- animationId: string;
10
- animationType: EchoAnimationType;
11
- borders: Border;
12
- id: Keys;
13
- initialBounds: Bound;
14
- };
5
+ import type { Echo as EchoType } from "../../types";
15
6
  type EchoManagerProps = {
16
- echoes: ReadonlyArray<EchoPropType>;
7
+ echoes: ReadonlyArray<EchoType>;
17
8
  onAnimationFinish?: (animationId: string) => void;
18
9
  };
19
10
  declare class EchoManager extends React.Component<EchoManagerProps> {
@@ -5,18 +5,9 @@
5
5
  * @flow
6
6
  */
7
7
  import * as React from "react";
8
- import Keys from "../data/keys";
9
- import { EchoAnimationType } from "../enums";
10
- import type { Border, Bound } from "../types";
11
- declare type EchoPropType = {|
12
- animationId: string,
13
- animationType: EchoAnimationType,
14
- borders: Border,
15
- id: Keys,
16
- initialBounds: Bound,
17
- |};
8
+ import type { Echo as EchoType } from "../../types";
18
9
  declare type EchoManagerProps = {|
19
- echoes: $ReadOnlyArray<EchoPropType>,
10
+ echoes: $ReadOnlyArray<EchoType>,
20
11
  onAnimationFinish?: (animationId: string) => void,
21
12
  |};
22
13
  declare class EchoManager extends React.Component<EchoManagerProps> {
@@ -2,10 +2,9 @@
2
2
  * A keypad that includes all of the expression symbols.
3
3
  */
4
4
  import * as React from "react";
5
- import { CursorContext } from "./input/cursor-contexts";
6
- import type { KeypadLayout } from "../types";
5
+ import { CursorContext } from "../input/cursor-contexts";
6
+ import type { KeypadLayout } from "../../types";
7
7
  interface ReduxProps {
8
- currentPage: number;
9
8
  cursorContext?: CursorContext;
10
9
  dynamicJumpOut: boolean;
11
10
  }
@@ -18,5 +17,5 @@ export declare const expressionKeypadLayout: KeypadLayout;
18
17
  declare class ExpressionKeypad extends React.Component<Props> {
19
18
  render(): JSX.Element;
20
19
  }
21
- declare const _default: import("react-redux").ConnectedComponent<typeof ExpressionKeypad, import("react-redux").Omit<React.ClassAttributes<ExpressionKeypad> & Props, "currentPage" | "cursorContext" | "dynamicJumpOut">>;
20
+ declare const _default: import("react-redux").ConnectedComponent<typeof ExpressionKeypad, import("react-redux").Omit<React.ClassAttributes<ExpressionKeypad> & Props, "cursorContext" | "dynamicJumpOut">>;
22
21
  export default _default;
@@ -6,10 +6,9 @@
6
6
  */
7
7
  import * as $Flowgen$Import$react_2d_redux from "react-redux";
8
8
  import * as React from "react";
9
- import { CursorContext } from "./input/cursor-contexts";
10
- import type { KeypadLayout } from "../types";
9
+ import { CursorContext } from "../input/cursor-contexts";
10
+ import type { KeypadLayout } from "../../types";
11
11
  declare interface ReduxProps {
12
- currentPage: number;
13
12
  cursorContext?: CursorContext;
14
13
  dynamicJumpOut: boolean;
15
14
  }
@@ -26,7 +25,7 @@ declare var _default: $Flowgen$Import$react_2d_redux.ConnectedComponent<
26
25
  typeof ExpressionKeypad,
27
26
  $Flowgen$Import$react_2d_redux.Omit<
28
27
  {| ...React.ClassAttributes<ExpressionKeypad>, ...Props |},
29
- "currentPage" | "cursorContext" | "dynamicJumpOut"
28
+ "cursorContext" | "dynamicJumpOut"
30
29
  >
31
30
  >;
32
31
  declare export default typeof _default;
@@ -3,8 +3,8 @@
3
3
  * with fractions, decimals, and percents.
4
4
  */
5
5
  import * as React from "react";
6
- import { CursorContext } from "./input/cursor-contexts";
7
- import type { KeypadLayout } from "../types";
6
+ import { CursorContext } from "../input/cursor-contexts";
7
+ import type { KeypadLayout } from "../../types";
8
8
  interface ReduxProps {
9
9
  cursorContext?: CursorContext;
10
10
  dynamicJumpOut: boolean;
@@ -6,8 +6,8 @@
6
6
  */
7
7
  import * as $Flowgen$Import$react_2d_redux from "react-redux";
8
8
  import * as React from "react";
9
- import { CursorContext } from "./input/cursor-contexts";
10
- import type { KeypadLayout } from "../types";
9
+ import { CursorContext } from "../input/cursor-contexts";
10
+ import type { KeypadLayout } from "../../types";
11
11
  declare interface ReduxProps {
12
12
  cursorContext?: CursorContext;
13
13
  dynamicJumpOut: boolean;
@@ -54,7 +54,7 @@ declare class GestureManager {
54
54
  * intercepting touch events
55
55
  * @param {object} borders - an opaque object describing the node's borders
56
56
  */
57
- registerDOMNode(id: any, domNode: any, childIds: any, borders: any): void;
57
+ registerDOMNode(id: any, domNode: any, childIds: any): void;
58
58
  /**
59
59
  * Unregister the DOM node with the given identifier.
60
60
  *
@@ -60,7 +60,7 @@ declare class GestureManager {
60
60
  * intercepting touch events
61
61
  * @param {{...}} borders - an opaque object describing the node's borders
62
62
  */
63
- registerDOMNode(id: any, domNode: any, childIds: any, borders: any): void;
63
+ registerDOMNode(id: any, domNode: any, childIds: any): void;
64
64
 
65
65
  /**
66
66
  * Unregister the DOM node with the given identifier.
@@ -1,4 +1,4 @@
1
- import Keys from "../data/keys";
1
+ import Keys from "../../data/keys";
2
2
  /**
3
3
  * The state machine that backs our gesture system. In particular, this state
4
4
  * machine manages the interplay between focuses, touch ups, and swiping.
@@ -4,7 +4,7 @@
4
4
  * Flowgen v1.21.0
5
5
  * @flow
6
6
  */
7
- import Keys from "../data/keys";
7
+ import Keys from "../../data/keys";
8
8
 
9
9
  /**
10
10
  * The state machine that backs our gesture system. In particular, this state
@@ -2,7 +2,7 @@
2
2
  * A component that renders an icon for a symbol with the given name.
3
3
  */
4
4
  import * as React from "react";
5
- import type { IconConfig } from "../types";
5
+ import type { IconConfig } from "../../types";
6
6
  import type { StyleType } from "@khanacademy/wonder-blocks-core";
7
7
  type Props = {
8
8
  focused: boolean;
@@ -5,7 +5,7 @@
5
5
  * @flow
6
6
  */
7
7
  import * as React from "react";
8
- import type { IconConfig } from "../types";
8
+ import type { IconConfig } from "../../types";
9
9
  import type { StyleType } from "@khanacademy/wonder-blocks-core";
10
10
  declare type Props = {|
11
11
  focused: boolean,
@@ -2,8 +2,8 @@
2
2
  * A component that renders a keypad button.
3
3
  */
4
4
  import * as React from "react";
5
- import { BorderDirection, KeyType } from "../enums";
6
- import type { Border, KeyConfig, IconConfig } from "../types";
5
+ import { BorderDirection, KeyType } from "../../enums";
6
+ import type { Border, NonManyKeyConfig, IconConfig } from "../../types";
7
7
  import type { StyleType } from "@khanacademy/wonder-blocks-core";
8
8
  interface ReduxProps {
9
9
  heightPx: number;
@@ -12,7 +12,7 @@ interface ReduxProps {
12
12
  interface Props extends ReduxProps {
13
13
  ariaLabel?: string;
14
14
  borders: Border;
15
- childKeys: ReadonlyArray<KeyConfig>;
15
+ childKeys: ReadonlyArray<NonManyKeyConfig>;
16
16
  disabled: boolean;
17
17
  focused: boolean;
18
18
  popoverEnabled: boolean;
@@ -45,7 +45,7 @@ declare class KeypadButton extends React.PureComponent<Props> {
45
45
  declare const _default: import("react-redux").ConnectedComponent<typeof KeypadButton, import("react-redux").Omit<Pick<React.ClassAttributes<KeypadButton> & Props, "style" | "ref" | "ariaLabel" | "onTouchCancel" | "onTouchEnd" | "onTouchMove" | "onTouchStart" | "icon" | "type" | "heightPx" | "widthPx" | "key"> & {
46
46
  focused?: boolean | undefined;
47
47
  borders?: readonly (BorderDirection | undefined)[] | undefined;
48
- childKeys?: readonly KeyConfig[] | undefined;
48
+ childKeys?: readonly NonManyKeyConfig[] | undefined;
49
49
  disabled?: boolean | undefined;
50
50
  popoverEnabled?: boolean | undefined;
51
51
  } & {}, "heightPx" | "widthPx">>;
@@ -6,8 +6,8 @@
6
6
  */
7
7
  import * as $Flowgen$Import$react_2d_redux from "react-redux";
8
8
  import * as React from "react";
9
- import { BorderDirection, KeyType } from "../enums";
10
- import type { Border, KeyConfig, IconConfig } from "../types";
9
+ import { BorderDirection, KeyType } from "../../enums";
10
+ import type { Border, NonManyKeyConfig, IconConfig } from "../../types";
11
11
  import type { StyleType } from "@khanacademy/wonder-blocks-core";
12
12
  declare interface ReduxProps {
13
13
  heightPx: number;
@@ -16,7 +16,7 @@ declare interface ReduxProps {
16
16
  declare type Props = {
17
17
  ariaLabel?: string,
18
18
  borders: Border,
19
- childKeys: $ReadOnlyArray<KeyConfig>,
19
+ childKeys: $ReadOnlyArray<NonManyKeyConfig>,
20
20
  disabled: boolean,
21
21
  focused: boolean,
22
22
  popoverEnabled: boolean,
@@ -68,7 +68,7 @@ declare var _default: $Flowgen$Import$react_2d_redux.ConnectedComponent<
68
68
  ...{|
69
69
  focused?: boolean | void,
70
70
  borders?: $ReadOnlyArray<BorderDirection | void> | void,
71
- childKeys?: $ReadOnlyArray<KeyConfig> | void,
71
+ childKeys?: $ReadOnlyArray<NonManyKeyConfig> | void,
72
72
  disabled?: boolean | void,
73
73
  popoverEnabled?: boolean | void,
74
74
  |},
@@ -1,5 +1,5 @@
1
1
  import * as React from "react";
2
- import { LayoutMode, KeypadType } from "../enums";
2
+ import { LayoutMode, KeypadType } from "../../enums";
3
3
  import type { StyleType } from "@khanacademy/wonder-blocks-core";
4
4
  interface ReduxProps {
5
5
  active?: boolean;
@@ -35,5 +35,5 @@ declare class KeypadContainer extends React.Component<Props, State> {
35
35
  renderKeypad: () => JSX.Element;
36
36
  render(): JSX.Element;
37
37
  }
38
- declare const _default: import("react-redux").ConnectedComponent<typeof KeypadContainer, import("react-redux").Omit<React.ClassAttributes<KeypadContainer> & Props, "active" | "extraKeys" | "navigationPadEnabled" | "keypadType" | "onPageSizeChange" | "layoutMode">>;
38
+ declare const _default: import("react-redux").ConnectedComponent<typeof KeypadContainer, import("react-redux").Omit<React.ClassAttributes<KeypadContainer> & Props, "active" | "extraKeys" | "onPageSizeChange" | "keypadType" | "layoutMode" | "navigationPadEnabled">>;
39
39
  export default _default;