@magmamath/students-features 0.9.0-rc12 → 0.9.0-rc13

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 (131) hide show
  1. package/dist/commonjs/features/keyboard/components/AlgebraLayout/AlgebraLayout.js +24 -16
  2. package/dist/commonjs/features/keyboard/components/AlgebraLayout/AlgebraLayout.js.map +1 -1
  3. package/dist/commonjs/features/keyboard/components/BasicExtendedLayout/BasicExtendedLayout.js +15 -9
  4. package/dist/commonjs/features/keyboard/components/BasicExtendedLayout/BasicExtendedLayout.js.map +1 -1
  5. package/dist/commonjs/features/keyboard/components/BasicExtendedLayout/keyboardGroups.js +11 -1
  6. package/dist/commonjs/features/keyboard/components/BasicExtendedLayout/keyboardGroups.js.map +1 -1
  7. package/dist/commonjs/features/keyboard/components/BasicExtendedPlusLayout/BasicExtendedPlusLayout.js +15 -10
  8. package/dist/commonjs/features/keyboard/components/BasicExtendedPlusLayout/BasicExtendedPlusLayout.js.map +1 -1
  9. package/dist/commonjs/features/keyboard/components/BasicExtendedPlusLayout/keyboardGroups.js +10 -2
  10. package/dist/commonjs/features/keyboard/components/BasicExtendedPlusLayout/keyboardGroups.js.map +1 -1
  11. package/dist/commonjs/features/keyboard/components/BasicLayout/BasicLayout.js +12 -0
  12. package/dist/commonjs/features/keyboard/components/BasicLayout/BasicLayout.js.map +1 -1
  13. package/dist/commonjs/features/keyboard/components/BasicLayout/TimeBasicLayout.js +3 -8
  14. package/dist/commonjs/features/keyboard/components/BasicLayout/TimeBasicLayout.js.map +1 -1
  15. package/dist/commonjs/features/keyboard/components/BasicLayout/keyboardGroup.js +5 -1
  16. package/dist/commonjs/features/keyboard/components/BasicLayout/keyboardGroup.js.map +1 -1
  17. package/dist/commonjs/features/keyboard/components/Keyboard.js +6 -7
  18. package/dist/commonjs/features/keyboard/components/Keyboard.js.map +1 -1
  19. package/dist/commonjs/features/keyboard/components/KeysList/KeysList.js +43 -24
  20. package/dist/commonjs/features/keyboard/components/KeysList/KeysList.js.map +1 -1
  21. package/dist/commonjs/features/keyboard/components/Numpad/Numpad.js +18 -10
  22. package/dist/commonjs/features/keyboard/components/Numpad/Numpad.js.map +1 -1
  23. package/dist/commonjs/features/keyboard/components/UnitsLayout/UnitsLayout.js +16 -10
  24. package/dist/commonjs/features/keyboard/components/UnitsLayout/UnitsLayout.js.map +1 -1
  25. package/dist/commonjs/features/keyboard/constants/keysValues.js +11 -1
  26. package/dist/commonjs/features/keyboard/constants/keysValues.js.map +1 -1
  27. package/dist/commonjs/features/keyboard/constants.js +2 -1
  28. package/dist/commonjs/features/keyboard/constants.js.map +1 -1
  29. package/dist/commonjs/features/keyboard/types/MathKeysGroups/textSymbols.js +9 -9
  30. package/dist/commonjs/features/keyboard/types/MathKeysGroups/textSymbols.js.map +1 -1
  31. package/dist/commonjs/features/keyboard/types/types.js +2 -0
  32. package/dist/commonjs/features/keyboard/types/types.js.map +1 -1
  33. package/dist/module/features/keyboard/components/AlgebraLayout/AlgebraLayout.js +25 -17
  34. package/dist/module/features/keyboard/components/AlgebraLayout/AlgebraLayout.js.map +1 -1
  35. package/dist/module/features/keyboard/components/BasicExtendedLayout/BasicExtendedLayout.js +16 -10
  36. package/dist/module/features/keyboard/components/BasicExtendedLayout/BasicExtendedLayout.js.map +1 -1
  37. package/dist/module/features/keyboard/components/BasicExtendedLayout/keyboardGroups.js +10 -0
  38. package/dist/module/features/keyboard/components/BasicExtendedLayout/keyboardGroups.js.map +1 -1
  39. package/dist/module/features/keyboard/components/BasicExtendedPlusLayout/BasicExtendedPlusLayout.js +16 -11
  40. package/dist/module/features/keyboard/components/BasicExtendedPlusLayout/BasicExtendedPlusLayout.js.map +1 -1
  41. package/dist/module/features/keyboard/components/BasicExtendedPlusLayout/keyboardGroups.js +9 -1
  42. package/dist/module/features/keyboard/components/BasicExtendedPlusLayout/keyboardGroups.js.map +1 -1
  43. package/dist/module/features/keyboard/components/BasicLayout/BasicLayout.js +13 -1
  44. package/dist/module/features/keyboard/components/BasicLayout/BasicLayout.js.map +1 -1
  45. package/dist/module/features/keyboard/components/BasicLayout/TimeBasicLayout.js +3 -8
  46. package/dist/module/features/keyboard/components/BasicLayout/TimeBasicLayout.js.map +1 -1
  47. package/dist/module/features/keyboard/components/BasicLayout/keyboardGroup.js +4 -0
  48. package/dist/module/features/keyboard/components/BasicLayout/keyboardGroup.js.map +1 -1
  49. package/dist/module/features/keyboard/components/Keyboard.js +6 -7
  50. package/dist/module/features/keyboard/components/Keyboard.js.map +1 -1
  51. package/dist/module/features/keyboard/components/KeysList/KeysList.js +44 -25
  52. package/dist/module/features/keyboard/components/KeysList/KeysList.js.map +1 -1
  53. package/dist/module/features/keyboard/components/Numpad/Numpad.js +19 -12
  54. package/dist/module/features/keyboard/components/Numpad/Numpad.js.map +1 -1
  55. package/dist/module/features/keyboard/components/UnitsLayout/UnitsLayout.js +17 -11
  56. package/dist/module/features/keyboard/components/UnitsLayout/UnitsLayout.js.map +1 -1
  57. package/dist/module/features/keyboard/constants/keysValues.js +14 -4
  58. package/dist/module/features/keyboard/constants/keysValues.js.map +1 -1
  59. package/dist/module/features/keyboard/constants.js +1 -0
  60. package/dist/module/features/keyboard/constants.js.map +1 -1
  61. package/dist/module/features/keyboard/types/MathKeysGroups/textSymbols.js +9 -9
  62. package/dist/module/features/keyboard/types/MathKeysGroups/textSymbols.js.map +1 -1
  63. package/dist/module/features/keyboard/types/types.js +2 -0
  64. package/dist/module/features/keyboard/types/types.js.map +1 -1
  65. package/dist/typescript/commonjs/features/keyboard/components/AlgebraLayout/AlgebraLayout.d.ts.map +1 -1
  66. package/dist/typescript/commonjs/features/keyboard/components/BasicExtendedLayout/BasicExtendedLayout.d.ts.map +1 -1
  67. package/dist/typescript/commonjs/features/keyboard/components/BasicExtendedLayout/keyboardGroups.d.ts +2 -0
  68. package/dist/typescript/commonjs/features/keyboard/components/BasicExtendedLayout/keyboardGroups.d.ts.map +1 -1
  69. package/dist/typescript/commonjs/features/keyboard/components/BasicExtendedPlusLayout/BasicExtendedPlusLayout.d.ts.map +1 -1
  70. package/dist/typescript/commonjs/features/keyboard/components/BasicExtendedPlusLayout/keyboardGroups.d.ts +2 -0
  71. package/dist/typescript/commonjs/features/keyboard/components/BasicExtendedPlusLayout/keyboardGroups.d.ts.map +1 -1
  72. package/dist/typescript/commonjs/features/keyboard/components/BasicLayout/BasicLayout.d.ts +1 -1
  73. package/dist/typescript/commonjs/features/keyboard/components/BasicLayout/BasicLayout.d.ts.map +1 -1
  74. package/dist/typescript/commonjs/features/keyboard/components/BasicLayout/TimeBasicLayout.d.ts.map +1 -1
  75. package/dist/typescript/commonjs/features/keyboard/components/BasicLayout/keyboardGroup.d.ts +1 -0
  76. package/dist/typescript/commonjs/features/keyboard/components/BasicLayout/keyboardGroup.d.ts.map +1 -1
  77. package/dist/typescript/commonjs/features/keyboard/components/Keyboard.d.ts +1 -1
  78. package/dist/typescript/commonjs/features/keyboard/components/Keyboard.d.ts.map +1 -1
  79. package/dist/typescript/commonjs/features/keyboard/components/KeysList/KeysList.d.ts.map +1 -1
  80. package/dist/typescript/commonjs/features/keyboard/components/Numpad/Numpad.d.ts +5 -1
  81. package/dist/typescript/commonjs/features/keyboard/components/Numpad/Numpad.d.ts.map +1 -1
  82. package/dist/typescript/commonjs/features/keyboard/components/UnitsLayout/UnitsLayout.d.ts.map +1 -1
  83. package/dist/typescript/commonjs/features/keyboard/constants/keyboardLayouts.d.ts +2 -2
  84. package/dist/typescript/commonjs/features/keyboard/constants/keyboardLayouts.d.ts.map +1 -1
  85. package/dist/typescript/commonjs/features/keyboard/constants/keysValues.d.ts.map +1 -1
  86. package/dist/typescript/commonjs/features/keyboard/constants.d.ts +1 -0
  87. package/dist/typescript/commonjs/features/keyboard/constants.d.ts.map +1 -1
  88. package/dist/typescript/commonjs/features/keyboard/types/types.d.ts +4 -0
  89. package/dist/typescript/commonjs/features/keyboard/types/types.d.ts.map +1 -1
  90. package/dist/typescript/module/features/keyboard/components/AlgebraLayout/AlgebraLayout.d.ts.map +1 -1
  91. package/dist/typescript/module/features/keyboard/components/BasicExtendedLayout/BasicExtendedLayout.d.ts.map +1 -1
  92. package/dist/typescript/module/features/keyboard/components/BasicExtendedLayout/keyboardGroups.d.ts +2 -0
  93. package/dist/typescript/module/features/keyboard/components/BasicExtendedLayout/keyboardGroups.d.ts.map +1 -1
  94. package/dist/typescript/module/features/keyboard/components/BasicExtendedPlusLayout/BasicExtendedPlusLayout.d.ts.map +1 -1
  95. package/dist/typescript/module/features/keyboard/components/BasicExtendedPlusLayout/keyboardGroups.d.ts +2 -0
  96. package/dist/typescript/module/features/keyboard/components/BasicExtendedPlusLayout/keyboardGroups.d.ts.map +1 -1
  97. package/dist/typescript/module/features/keyboard/components/BasicLayout/BasicLayout.d.ts +1 -1
  98. package/dist/typescript/module/features/keyboard/components/BasicLayout/BasicLayout.d.ts.map +1 -1
  99. package/dist/typescript/module/features/keyboard/components/BasicLayout/TimeBasicLayout.d.ts.map +1 -1
  100. package/dist/typescript/module/features/keyboard/components/BasicLayout/keyboardGroup.d.ts +1 -0
  101. package/dist/typescript/module/features/keyboard/components/BasicLayout/keyboardGroup.d.ts.map +1 -1
  102. package/dist/typescript/module/features/keyboard/components/Keyboard.d.ts +1 -1
  103. package/dist/typescript/module/features/keyboard/components/Keyboard.d.ts.map +1 -1
  104. package/dist/typescript/module/features/keyboard/components/KeysList/KeysList.d.ts.map +1 -1
  105. package/dist/typescript/module/features/keyboard/components/Numpad/Numpad.d.ts +5 -1
  106. package/dist/typescript/module/features/keyboard/components/Numpad/Numpad.d.ts.map +1 -1
  107. package/dist/typescript/module/features/keyboard/components/UnitsLayout/UnitsLayout.d.ts.map +1 -1
  108. package/dist/typescript/module/features/keyboard/constants/keyboardLayouts.d.ts +2 -2
  109. package/dist/typescript/module/features/keyboard/constants/keyboardLayouts.d.ts.map +1 -1
  110. package/dist/typescript/module/features/keyboard/constants/keysValues.d.ts.map +1 -1
  111. package/dist/typescript/module/features/keyboard/constants.d.ts +1 -0
  112. package/dist/typescript/module/features/keyboard/constants.d.ts.map +1 -1
  113. package/dist/typescript/module/features/keyboard/types/types.d.ts +4 -0
  114. package/dist/typescript/module/features/keyboard/types/types.d.ts.map +1 -1
  115. package/package.json +1 -1
  116. package/src/features/keyboard/components/AlgebraLayout/AlgebraLayout.tsx +33 -21
  117. package/src/features/keyboard/components/BasicExtendedLayout/BasicExtendedLayout.tsx +15 -7
  118. package/src/features/keyboard/components/BasicExtendedLayout/keyboardGroups.tsx +54 -0
  119. package/src/features/keyboard/components/BasicExtendedPlusLayout/BasicExtendedPlusLayout.tsx +18 -10
  120. package/src/features/keyboard/components/BasicExtendedPlusLayout/keyboardGroups.tsx +53 -1
  121. package/src/features/keyboard/components/BasicLayout/BasicLayout.tsx +13 -1
  122. package/src/features/keyboard/components/BasicLayout/TimeBasicLayout.tsx +3 -3
  123. package/src/features/keyboard/components/BasicLayout/keyboardGroup.ts +12 -0
  124. package/src/features/keyboard/components/Keyboard.tsx +8 -20
  125. package/src/features/keyboard/components/KeysList/KeysList.tsx +43 -23
  126. package/src/features/keyboard/components/Numpad/Numpad.tsx +15 -7
  127. package/src/features/keyboard/components/UnitsLayout/UnitsLayout.tsx +27 -19
  128. package/src/features/keyboard/constants/keysValues.ts +16 -1
  129. package/src/features/keyboard/constants.ts +2 -0
  130. package/src/features/keyboard/types/MathKeysGroups/textSymbols.tsx +9 -9
  131. package/src/features/keyboard/types/types.ts +4 -0
@@ -1,15 +1,18 @@
1
1
  import React from 'react'
2
- import { StyleSheet, View } from 'react-native'
2
+ import { StyleSheet, useWindowDimensions, View } from 'react-native'
3
3
  import { KeysList } from '../KeysList/KeysList'
4
4
  import { KeyboardLayoutProps, KeyboardType } from '../../types/types'
5
5
  import { IS_MOBILE } from '@magmamath/react-native-ui'
6
- import { useText } from '../../../../shared/translation'
6
+ import { Locale, useText } from '../../../../shared/translation'
7
7
  import { KEYBOARD_GROUPS_BY_LOCALE } from '../../constants/keysValues'
8
- import { Locale } from '@magmamath/students-features'
9
8
 
10
9
  export const BasicExtendedPlusLayout = (props: KeyboardLayoutProps) => {
11
10
  const t = useText()
12
- const keysGroup = KEYBOARD_GROUPS_BY_LOCALE[t('locale') as Locale][KeyboardType.BasicExtendedPlus]
11
+ const { width } = useWindowDimensions()
12
+ const keysGroup =
13
+ width > 1180
14
+ ? KEYBOARD_GROUPS_BY_LOCALE[t('locale') as Locale][KeyboardType.BasicExtendedPlus]
15
+ : KEYBOARD_GROUPS_BY_LOCALE[t('locale') as Locale][KeyboardType.BasicExtendedPlusMobile]
13
16
 
14
17
  return (
15
18
  <View style={styles.container}>
@@ -19,9 +22,9 @@ export const BasicExtendedPlusLayout = (props: KeyboardLayoutProps) => {
19
22
  style={{
20
23
  container: styles.keysContainer,
21
24
  option: {
22
- button: styles.option,
23
- text: styles.text,
24
- ...(IS_MOBILE && { container: { flexBasis: 50, maxWidth: 50 } }),
25
+ button: styles.optionButton,
26
+ text: styles.optionText,
27
+ ...(IS_MOBILE && { container: styles.optionContainer }),
25
28
  },
26
29
  }}
27
30
  {...props}
@@ -40,10 +43,15 @@ const styles = StyleSheet.create({
40
43
  keysContainer: {
41
44
  gap: 10,
42
45
  },
43
- option: {
44
- minWidth: 42,
46
+ optionButton: {
47
+ width: 42,
45
48
  },
46
- text: {
49
+ optionContainer: {
50
+ flexBasis: 50,
51
+ maxWidth: 50,
52
+ },
53
+ optionText: {
54
+ fontWeight: 700,
47
55
  fontStyle: 'italic',
48
56
  },
49
57
  })
@@ -36,6 +36,32 @@ export const MATH_ENTRY_BASIC_EXTENDED_PLUS: KeyboardGroup = {
36
36
  ],
37
37
  }
38
38
 
39
+ export const MATH_ENTRY_BASIC_EXTENDED_PLUS_MOBILE: KeyboardGroup = {
40
+ id: 'math-entry-basic-extended-plus-mobile',
41
+ keys: [
42
+ MATH_BASIC_OPERATORS.ADDITION,
43
+ MATH_BASIC_OPERATORS.SUBTRACTION,
44
+ MATH_BASIC_OPERATORS.EQUALS,
45
+ MATH_BASIC_OPERATORS.PARENTHESES,
46
+ MATH_BASIC_OPERATORS.SQUARE_POWER,
47
+ MATH_BASIC_OPERATORS.SQUARE_ROOT,
48
+ MATH_BASIC_OPERATORS.GREATER_THAN,
49
+ MATH_BASIC_OPERATORS.MULTIPLICATION,
50
+ MATH_BASIC_OPERATORS.FRACTION,
51
+ MATH_BASIC_OPERATORS.COMMA,
52
+ MATH_BASIC_OPERATORS.NTH_POWER,
53
+ MATH_BASIC_OPERATORS.NTH_ROOT,
54
+ MATH_SYMBOLS.PI,
55
+ MATH_BASIC_OPERATORS.LESS_THAN,
56
+ MATH_TEXT_SYMBOLS.X,
57
+ MATH_TEXT_SYMBOLS.Y,
58
+ MATH_TEXT_SYMBOLS.Z,
59
+ MATH_SYMBOLS.THETA,
60
+ MATH_GEOMETRY_SYMBOLS.DEGREE,
61
+ MATH_GEOMETRY_SYMBOLS.RADIAN,
62
+ ],
63
+ }
64
+
39
65
  export const MATH_ENTRY_BASIC_EXTENDED_PLUS_SW: KeyboardGroup = {
40
66
  id: 'math-entry-basic-extended-plus-sw',
41
67
  keys: [
@@ -48,7 +74,7 @@ export const MATH_ENTRY_BASIC_EXTENDED_PLUS_SW: KeyboardGroup = {
48
74
  MATH_BASIC_OPERATORS.PLUS_MINUS,
49
75
  MATH_SYMBOLS.PI,
50
76
  MATH_GEOMETRY_SYMBOLS.RADIAN,
51
- MATH_BASIC_OPERATORS.MULTIPLICATION,
77
+ MATH_BASIC_OPERATORS.C_DOT,
52
78
  MATH_BASIC_OPERATORS.FRACTION,
53
79
  MATH_BASIC_OPERATORS.SLASH,
54
80
  MATH_BASIC_OPERATORS.DOT,
@@ -67,3 +93,29 @@ export const MATH_ENTRY_BASIC_EXTENDED_PLUS_SW: KeyboardGroup = {
67
93
  MATH_BASIC_OPERATORS.GREATER_THAN,
68
94
  ],
69
95
  }
96
+
97
+ export const MATH_ENTRY_BASIC_EXTENDED_PLUS_MOBILE_SW: KeyboardGroup = {
98
+ id: 'math-entry-basic-extended-plus-mobile-sw',
99
+ keys: [
100
+ MATH_BASIC_OPERATORS.ADDITION,
101
+ MATH_BASIC_OPERATORS.SUBTRACTION,
102
+ MATH_BASIC_OPERATORS.EQUALS,
103
+ MATH_BASIC_OPERATORS.PARENTHESES,
104
+ MATH_BASIC_OPERATORS.SQUARE_POWER,
105
+ MATH_BASIC_OPERATORS.SQUARE_ROOT,
106
+ MATH_BASIC_OPERATORS.GREATER_THAN,
107
+ MATH_BASIC_OPERATORS.C_DOT,
108
+ MATH_BASIC_OPERATORS.FRACTION,
109
+ MATH_BASIC_OPERATORS.DOT,
110
+ MATH_BASIC_OPERATORS.NTH_POWER,
111
+ MATH_BASIC_OPERATORS.NTH_ROOT,
112
+ MATH_SYMBOLS.PI,
113
+ MATH_BASIC_OPERATORS.LESS_THAN,
114
+ MATH_TEXT_SYMBOLS.X,
115
+ MATH_TEXT_SYMBOLS.Y,
116
+ MATH_TEXT_SYMBOLS.Z,
117
+ MATH_SYMBOLS.THETA,
118
+ MATH_GEOMETRY_SYMBOLS.DEGREE,
119
+ MATH_GEOMETRY_SYMBOLS.RADIAN,
120
+ ],
121
+ }
@@ -1,14 +1,21 @@
1
1
  import React, { PropsWithChildren } from 'react'
2
2
  import { KeysList } from '../KeysList/KeysList'
3
- import { StyleSheet, View } from 'react-native'
3
+ import { StyleSheet, useWindowDimensions, View } from 'react-native'
4
4
  import { KeyboardLayoutProps } from '../../types/types'
5
5
  import { MATH_ENTRY_BASIC_KEYBOARD_GROUP } from './keyboardGroup'
6
6
  import { IS_MOBILE } from '@magmamath/react-native-ui'
7
+ import { MAX_WIDTH_FOR_MOBILE_LAYOUT } from '../../constants'
7
8
 
8
9
  export const BasicLayout = (props: KeyboardLayoutProps & PropsWithChildren) => {
9
10
  const keys = props.children
10
11
  ? MATH_ENTRY_BASIC_KEYBOARD_GROUP.keys
11
12
  : MATH_ENTRY_BASIC_KEYBOARD_GROUP.keys.slice(0, -1)
13
+ const { width } = useWindowDimensions()
14
+
15
+ if (width <= MAX_WIDTH_FOR_MOBILE_LAYOUT && !props.children) {
16
+ return null
17
+ }
18
+
12
19
  return (
13
20
  <View style={styles.container}>
14
21
  <KeysList
@@ -19,6 +26,7 @@ export const BasicLayout = (props: KeyboardLayoutProps & PropsWithChildren) => {
19
26
  container: styles.keysContainer,
20
27
  option: {
21
28
  button: styles.keyOption,
29
+ text: styles.keyText,
22
30
  ...(IS_MOBILE && { container: { flexBasis: 45, maxWidth: 45 } }),
23
31
  },
24
32
  }}
@@ -44,4 +52,8 @@ const styles = StyleSheet.create({
44
52
  keyOption: {
45
53
  width: 42,
46
54
  },
55
+ keyText: {
56
+ fontSize: 16,
57
+ fontWeight: 700,
58
+ },
47
59
  })
@@ -5,7 +5,6 @@ import { BasicLayout } from './BasicLayout'
5
5
  import { KeyboardLayoutProps, KeyboardType } from '../../types/types'
6
6
  import { useText, Locale } from '../../../../shared/translation'
7
7
  import { KEYBOARD_GROUPS_BY_LOCALE } from '../../constants/keysValues'
8
- import { IS_MOBILE } from '@magmamath/react-native-ui'
9
8
 
10
9
  export const TimeBasicLayout = (props: KeyboardLayoutProps) => {
11
10
  const t = useText()
@@ -19,7 +18,7 @@ export const TimeBasicLayout = (props: KeyboardLayoutProps) => {
19
18
  style={{
20
19
  option: {
21
20
  text: styles.keysText,
22
- ...(IS_MOBILE && { container: { flexBasis: 45, maxWidth: 45 } }),
21
+ container: styles.optionContainer,
23
22
  },
24
23
  container: styles.keysContainer,
25
24
  }}
@@ -31,7 +30,8 @@ export const TimeBasicLayout = (props: KeyboardLayoutProps) => {
31
30
 
32
31
  const styles = StyleSheet.create({
33
32
  optionContainer: {
34
- flex: 1,
33
+ flexBasis: 49,
34
+ maxWidth: 49,
35
35
  },
36
36
  keysContainer: {
37
37
  gap: 9,
@@ -14,6 +14,18 @@ export const MATH_ENTRY_BASIC_KEYBOARD_GROUP: KeyboardGroup = {
14
14
  ],
15
15
  }
16
16
 
17
+ export const MATH_ENTRY_BASIC_SW_KEYBOARD_GROUP: KeyboardGroup = {
18
+ id: 'math-entry-basic-sw',
19
+ keys: [
20
+ MATH_BASIC_OPERATORS.ADDITION,
21
+ MATH_BASIC_OPERATORS.SUBTRACTION,
22
+ MATH_BASIC_OPERATORS.EQUALS,
23
+ MATH_BASIC_OPERATORS.C_DOT,
24
+ MATH_BASIC_OPERATORS.DIVISION,
25
+ MATH_BASIC_OPERATORS.DOT,
26
+ ],
27
+ }
28
+
17
29
  export const MATH_TIME_SW_KEYBOARD_GROUP: KeyboardGroup = {
18
30
  id: 'math-entry-time-sw',
19
31
  numOfRows: 3,
@@ -1,16 +1,10 @@
1
1
  import React, { useEffect, useRef } from 'react'
2
- import {
3
- Animated,
4
- Easing,
5
- StyleProp,
6
- StyleSheet,
7
- useWindowDimensions,
8
- ViewStyle,
9
- } from 'react-native'
2
+ import { Animated, StyleProp, StyleSheet, useWindowDimensions, ViewStyle } from 'react-native'
10
3
  import { COLORS, SelectOptionColor, SHADOWS } from '@magmamath/react-native-ui'
11
4
  import { getLayoutByCharType, KEYBOARD_LAYOUTS } from '../constants/keyboardLayouts'
12
5
  import { KeyboardKey, KeyboardKeyValue, KeyboardType } from '../types/types'
13
6
  import { Numpad } from './Numpad/Numpad'
7
+ import { MAX_WIDTH_FOR_MOBILE_LAYOUT } from '../constants'
14
8
 
15
9
  type KeyboardProps = {
16
10
  onKeyPress: ({ katexValue, mathliveValue, isSpecialSymbol }: KeyboardKeyValue) => void
@@ -25,12 +19,12 @@ type KeyboardProps = {
25
19
 
26
20
  export const Keyboard = ({ style, characterType, visible = true, ...props }: KeyboardProps) => {
27
21
  const slideAnim = useRef(new Animated.Value(600)).current
28
- const maxWidth =
29
- characterType &&
30
- KEYBOARD_LAYOUTS[KeyboardType.AlgebraAdvanced].characterTypes.includes(characterType)
31
- ? 1300
32
- : 1180
33
22
  const { width } = useWindowDimensions()
23
+ const Layout = getLayoutByCharType(characterType)
24
+ const isBasicMobileLayout =
25
+ characterType &&
26
+ width <= MAX_WIDTH_FOR_MOBILE_LAYOUT &&
27
+ KEYBOARD_LAYOUTS[KeyboardType.Basic].characterTypes.includes(characterType)
34
28
 
35
29
  useEffect(() => {
36
30
  Animated.spring(slideAnim, {
@@ -43,12 +37,6 @@ export const Keyboard = ({ style, characterType, visible = true, ...props }: Key
43
37
  }).start()
44
38
  }, [visible])
45
39
 
46
- if (width < 820) {
47
- return null
48
- }
49
-
50
- const Layout = getLayoutByCharType(characterType)
51
-
52
40
  return (
53
41
  <Animated.View
54
42
  style={[
@@ -60,7 +48,7 @@ export const Keyboard = ({ style, characterType, visible = true, ...props }: Key
60
48
  ]}
61
49
  >
62
50
  <Layout {...props} />
63
- {width >= maxWidth && <Numpad {...props} />}
51
+ <Numpad {...props} withBorder={!isBasicMobileLayout} />
64
52
  </Animated.View>
65
53
  )
66
54
  }
@@ -1,5 +1,5 @@
1
1
  import React from 'react'
2
- import { StyleProp, StyleSheet, ViewStyle } from 'react-native'
2
+ import { GestureResponderEvent, Platform, StyleProp, StyleSheet, ViewStyle } from 'react-native'
3
3
  import {
4
4
  ButtonStyle,
5
5
  SelectGroup,
@@ -20,6 +20,8 @@ type KeysListProps = {
20
20
  }
21
21
  } & KeyboardLayoutProps
22
22
 
23
+ const isIOSWeb = Platform.OS === 'web' && /iPad|iPhone|iPod/.test(navigator.userAgent)
24
+
23
25
  export const KeysList = ({
24
26
  keys,
25
27
  numOfRows,
@@ -33,36 +35,46 @@ export const KeysList = ({
33
35
  <SelectGroup
34
36
  style={{
35
37
  container: [styles.container, style?.container],
36
- row: { gap: 4 },
38
+ row: styles.row,
37
39
  option: {
38
- container: {
39
- flexGrow: 0,
40
- flexShrink: 0,
41
- flexBasis: 'auto',
42
- },
40
+ container: styles.optionContainer,
43
41
  ...style?.option,
44
42
  },
45
43
  }}
46
44
  numOfRows={numOfRows}
47
45
  color={SelectOptionColor.GREY}
48
46
  disabled={isDisabled}
49
- options={keys.map((key, index) => ({
50
- key: key.katexValue,
51
- title: key.icon ? key.icon : key.label,
52
- disabled:
53
- (isSpecialButtonsDisabled && DISABLED_KEYS.includes(key)) || disabledKeys?.includes(key),
54
- }))}
47
+ options={keys.map((key) => {
48
+ const pressHandler = (e: GestureResponderEvent) => {
49
+ onKeyPress?.({
50
+ event: e,
51
+ katexValue: key.katexValue,
52
+ mathliveValue: key.mathliveValue,
53
+ spreadsheetValue: key.spreadsheetValue,
54
+ isSpecialSymbol: key.isSpecialSymbol,
55
+ })
56
+ }
57
+
58
+ return {
59
+ key: key.katexValue,
60
+ title: key.icon ? key.icon : key.label,
61
+ delayPressIn: 0,
62
+ onPressIn: (e) => {
63
+ onKeyPress?.({
64
+ event: e,
65
+ katexValue: key.katexValue,
66
+ mathliveValue: key.mathliveValue,
67
+ spreadsheetValue: key.spreadsheetValue,
68
+ isSpecialSymbol: key.isSpecialSymbol,
69
+ })
70
+ },
71
+ ...(isIOSWeb ? { onPress: pressHandler } : { onPressIn: pressHandler }),
72
+ disabled:
73
+ (isSpecialButtonsDisabled && DISABLED_KEYS.includes(key)) ||
74
+ disabledKeys?.includes(key),
75
+ }
76
+ })}
55
77
  size={SelectOptionSize.SMALL}
56
- onOptionChange={(option) => {
57
- const key = keys.find((k) => k.katexValue === option.key)
58
- if (!key) return
59
- onKeyPress?.({
60
- katexValue: key.katexValue,
61
- mathliveValue: key.mathliveValue,
62
- spreadsheetValue: key.spreadsheetValue,
63
- isSpecialSymbol: key.isSpecialSymbol,
64
- })
65
- }}
66
78
  />
67
79
  )
68
80
  }
@@ -72,4 +84,12 @@ const styles = StyleSheet.create({
72
84
  width: 'auto',
73
85
  gap: 9,
74
86
  },
87
+ row: {
88
+ gap: 3,
89
+ },
90
+ optionContainer: {
91
+ flexGrow: 0,
92
+ flexShrink: 0,
93
+ flexBasis: 'auto',
94
+ },
75
95
  })
@@ -1,18 +1,21 @@
1
1
  import React from 'react'
2
2
  import { KeysList } from '../KeysList/KeysList'
3
3
  import { StyleSheet, View } from 'react-native'
4
- import { COLORS, SPACING } from '@magmamath/react-native-ui'
4
+ import { COLORS, SPACING, IS_MOBILE } from '@magmamath/react-native-ui'
5
5
  import { KeyboardLayoutProps, KeyboardType } from '../../types/types'
6
6
  import { Locale, useText } from '../../../../shared/translation'
7
7
  import { getKeyboardGroup } from '../../helpers'
8
- import { IS_MOBILE } from '@magmamath/react-native-ui'
9
8
 
10
- export const Numpad = (props: KeyboardLayoutProps) => {
9
+ type NumpadProps = {
10
+ withBorder?: boolean
11
+ } & KeyboardLayoutProps
12
+
13
+ export const Numpad = ({ withBorder = true, ...props }: NumpadProps) => {
11
14
  const t = useText()
12
15
  const keyboardGroup = getKeyboardGroup(t('locale') as Locale, KeyboardType.Numpad)
13
16
 
14
17
  return (
15
- <View style={styles.container}>
18
+ <View style={[styles.container, withBorder && { borderColor: COLORS.NEUTRAL_3 }]}>
16
19
  <KeysList
17
20
  keys={keyboardGroup.keys}
18
21
  numOfRows={3}
@@ -21,7 +24,7 @@ export const Numpad = (props: KeyboardLayoutProps) => {
21
24
  option: {
22
25
  text: styles.keyText,
23
26
  button: styles.keyButton,
24
- ...(IS_MOBILE && { container: { flexBasis: 45 } }),
27
+ container: IS_MOBILE ? { flexBasis: 45 } : styles.optionContainer,
25
28
  },
26
29
  }}
27
30
  {...props}
@@ -33,8 +36,9 @@ export const Numpad = (props: KeyboardLayoutProps) => {
33
36
  const styles = StyleSheet.create({
34
37
  container: {
35
38
  borderLeftWidth: 1,
36
- borderColor: COLORS.NEUTRAL_3,
39
+ borderColor: 'transparent',
37
40
  paddingLeft: SPACING[800],
41
+ marginLeft: 'auto',
38
42
  },
39
43
  keysContainer: {
40
44
  display: 'flex',
@@ -49,6 +53,10 @@ const styles = StyleSheet.create({
49
53
  fontWeight: 700,
50
54
  },
51
55
  keyButton: {
52
- width: 42,
56
+ width: 40,
57
+ },
58
+ optionContainer: {
59
+ flexGrow: 0,
60
+ flexBasis: 'auto',
53
61
  },
54
62
  })
@@ -1,6 +1,6 @@
1
1
  import React, { useMemo, useState } from 'react'
2
2
  import { KeysList } from '../KeysList/KeysList'
3
- import { StyleSheet, View } from 'react-native'
3
+ import { StyleSheet, useWindowDimensions, View } from 'react-native'
4
4
  import {
5
5
  COLORS,
6
6
  FONT_FAMILY,
@@ -25,6 +25,7 @@ import {
25
25
  MATH_ENTRY_WEIGHT_UNITS_SW_KEYBOARD_GROUPS,
26
26
  } from './keyboardGroups'
27
27
  import { KEYBOARD_GROUPS_BY_LOCALE } from '../../constants/keysValues'
28
+ import { MAX_WIDTH_FOR_MOBILE_LAYOUT } from '../../constants'
28
29
 
29
30
  const UNITS_KEYBOARD_GROUPS = new Map([
30
31
  [
@@ -54,7 +55,10 @@ enum SelectedLayout {
54
55
  }
55
56
 
56
57
  export const UnitsLayout = (props: KeyboardLayoutProps) => {
57
- const [selectedLayout, setSelectedLayout] = useState<SelectedLayout>(SelectedLayout.ALGEBRA)
58
+ const { width } = useWindowDimensions()
59
+ const [selectedLayout, setSelectedLayout] = useState<SelectedLayout>(
60
+ width > MAX_WIDTH_FOR_MOBILE_LAYOUT ? SelectedLayout.ALGEBRA : SelectedLayout.UNITS,
61
+ )
58
62
  const t = useText()
59
63
  const basicExtendedKeys =
60
64
  KEYBOARD_GROUPS_BY_LOCALE[t('locale') as Locale][KeyboardType.BasicExtended]
@@ -100,6 +104,9 @@ export const UnitsLayout = (props: KeyboardLayoutProps) => {
100
104
  />
101
105
  ),
102
106
  key: '1',
107
+ onPressIn: () => {
108
+ setSelectedLayout(SelectedLayout.ALGEBRA)
109
+ },
103
110
  },
104
111
  {
105
112
  title: (
@@ -109,28 +116,30 @@ export const UnitsLayout = (props: KeyboardLayoutProps) => {
109
116
  />
110
117
  ),
111
118
  key: '2',
119
+ onPressIn: () => {
120
+ setSelectedLayout(SelectedLayout.UNITS)
121
+ },
112
122
  },
113
123
  ]
114
124
  }, [activeTab, selectedLayout])
115
125
 
116
126
  return (
117
127
  <View style={styles.container}>
118
- <SelectGroup
119
- numOfRows={2}
120
- options={selectOptions}
121
- size={SelectOptionSize.SMALL}
122
- style={{
123
- container: styles.optionContainer,
124
- option: { ...(IS_MOBILE && { container: { flexBasis: 45 } }) },
125
- }}
126
- color={props.color}
127
- selectedOptions={[
128
- selectedLayout === SelectedLayout.ALGEBRA ? selectOptions[0] : selectOptions[1],
129
- ]}
130
- onOptionChange={(option) => {
131
- setSelectedLayout(option.key === '1' ? SelectedLayout.ALGEBRA : SelectedLayout.UNITS)
132
- }}
133
- />
128
+ {width > MAX_WIDTH_FOR_MOBILE_LAYOUT && (
129
+ <SelectGroup
130
+ numOfRows={2}
131
+ options={selectOptions}
132
+ size={SelectOptionSize.SMALL}
133
+ style={{
134
+ container: styles.optionContainer,
135
+ option: { ...(IS_MOBILE && { container: { flexBasis: 45 } }) },
136
+ }}
137
+ color={props.color}
138
+ selectedOptions={[
139
+ selectedLayout === SelectedLayout.ALGEBRA ? selectOptions[0] : selectOptions[1],
140
+ ]}
141
+ />
142
+ )}
134
143
  {selectedLayout === SelectedLayout.UNITS ? (
135
144
  <UnitTabs
136
145
  tabs={tabs}
@@ -164,7 +173,6 @@ const styles = StyleSheet.create({
164
173
  flexDirection: 'row',
165
174
  gap: 16,
166
175
  paddingRight: 16,
167
- width: 450,
168
176
  },
169
177
  basicExtendedContainer: {
170
178
  gap: 8,
@@ -4,16 +4,21 @@ import {
4
4
  MATH_CURRENCY_UK_KEYBOARD_GROUP,
5
5
  MATH_CURRENCY_US_KEYBOARD_GROUP,
6
6
  MATH_ENTRY_BASIC_KEYBOARD_GROUP,
7
+ MATH_ENTRY_BASIC_SW_KEYBOARD_GROUP,
7
8
  MATH_TIME_SW_KEYBOARD_GROUP,
8
9
  MATH_TIME_US_KEYBOARD_GROUP,
9
10
  } from '../components/BasicLayout/keyboardGroup'
10
11
  import { MATH_ENTRY_ALGEBRA_KEYBOARD_GROUP } from '../components/AlgebraLayout/keyboardGroups'
11
12
  import {
13
+ MATH_ENTRY_BASIC_EXTENDED_MOBILE,
14
+ MATH_ENTRY_BASIC_EXTENDED_MOBILE_SW,
12
15
  MATH_ENTRY_BASIC_SW_EXTENDED,
13
16
  MATH_ENTRY_BASIC_US_EXTENDED,
14
17
  } from '../components/BasicExtendedLayout/keyboardGroups'
15
18
  import {
16
19
  MATH_ENTRY_BASIC_EXTENDED_PLUS,
20
+ MATH_ENTRY_BASIC_EXTENDED_PLUS_MOBILE,
21
+ MATH_ENTRY_BASIC_EXTENDED_PLUS_MOBILE_SW,
17
22
  MATH_ENTRY_BASIC_EXTENDED_PLUS_SW,
18
23
  } from '../components/BasicExtendedPlusLayout/keyboardGroups'
19
24
  import {
@@ -34,7 +39,9 @@ export const KEYBOARD_GROUPS_BY_LOCALE: Record<Locale, Record<KeyboardType, Keyb
34
39
  [Locale.CA]: {
35
40
  [KeyboardType.Basic]: MATH_ENTRY_BASIC_KEYBOARD_GROUP,
36
41
  [KeyboardType.BasicExtended]: MATH_ENTRY_BASIC_US_EXTENDED,
42
+ [KeyboardType.BasicExtendedMobile]: MATH_ENTRY_BASIC_EXTENDED_MOBILE,
37
43
  [KeyboardType.BasicExtendedPlus]: MATH_ENTRY_BASIC_EXTENDED_PLUS,
44
+ [KeyboardType.BasicExtendedPlusMobile]: MATH_ENTRY_BASIC_EXTENDED_PLUS_MOBILE,
38
45
  [KeyboardType.BasicUnits]: {
39
46
  ...MATH_ENTRY_LENGTH_UNITS_US_KEYBOARD_GROUPS,
40
47
  keys: MATH_ENTRY_LENGTH_UNITS_US_KEYBOARD_GROUPS.keys[0],
@@ -47,7 +54,9 @@ export const KEYBOARD_GROUPS_BY_LOCALE: Record<Locale, Record<KeyboardType, Keyb
47
54
  [Locale.SCT]: {
48
55
  [KeyboardType.Basic]: MATH_ENTRY_BASIC_KEYBOARD_GROUP,
49
56
  [KeyboardType.BasicExtended]: MATH_ENTRY_BASIC_US_EXTENDED,
57
+ [KeyboardType.BasicExtendedMobile]: MATH_ENTRY_BASIC_EXTENDED_MOBILE,
50
58
  [KeyboardType.BasicExtendedPlus]: MATH_ENTRY_BASIC_EXTENDED_PLUS,
59
+ [KeyboardType.BasicExtendedPlusMobile]: MATH_ENTRY_BASIC_EXTENDED_PLUS_MOBILE,
51
60
  [KeyboardType.BasicUnits]: {
52
61
  ...MATH_ENTRY_LENGTH_UNITS_US_KEYBOARD_GROUPS,
53
62
  keys: MATH_ENTRY_LENGTH_UNITS_US_KEYBOARD_GROUPS.keys[0],
@@ -60,7 +69,9 @@ export const KEYBOARD_GROUPS_BY_LOCALE: Record<Locale, Record<KeyboardType, Keyb
60
69
  [Locale.GB]: {
61
70
  [KeyboardType.Basic]: MATH_ENTRY_BASIC_KEYBOARD_GROUP,
62
71
  [KeyboardType.BasicExtended]: MATH_ENTRY_BASIC_US_EXTENDED,
72
+ [KeyboardType.BasicExtendedMobile]: MATH_ENTRY_BASIC_EXTENDED_MOBILE,
63
73
  [KeyboardType.BasicExtendedPlus]: MATH_ENTRY_BASIC_EXTENDED_PLUS,
74
+ [KeyboardType.BasicExtendedPlusMobile]: MATH_ENTRY_BASIC_EXTENDED_PLUS_MOBILE,
64
75
  [KeyboardType.BasicUnits]: {
65
76
  ...MATH_ENTRY_LENGTH_UNITS_US_KEYBOARD_GROUPS,
66
77
  keys: MATH_ENTRY_LENGTH_UNITS_US_KEYBOARD_GROUPS.keys[0],
@@ -73,7 +84,9 @@ export const KEYBOARD_GROUPS_BY_LOCALE: Record<Locale, Record<KeyboardType, Keyb
73
84
  [Locale.EN]: {
74
85
  [KeyboardType.Basic]: MATH_ENTRY_BASIC_KEYBOARD_GROUP,
75
86
  [KeyboardType.BasicExtended]: MATH_ENTRY_BASIC_US_EXTENDED,
87
+ [KeyboardType.BasicExtendedMobile]: MATH_ENTRY_BASIC_EXTENDED_MOBILE,
76
88
  [KeyboardType.BasicExtendedPlus]: MATH_ENTRY_BASIC_EXTENDED_PLUS,
89
+ [KeyboardType.BasicExtendedPlusMobile]: MATH_ENTRY_BASIC_EXTENDED_PLUS_MOBILE,
77
90
  [KeyboardType.BasicUnits]: {
78
91
  ...MATH_ENTRY_LENGTH_UNITS_US_KEYBOARD_GROUPS,
79
92
  keys: MATH_ENTRY_LENGTH_UNITS_US_KEYBOARD_GROUPS.keys[0],
@@ -84,9 +97,11 @@ export const KEYBOARD_GROUPS_BY_LOCALE: Record<Locale, Record<KeyboardType, Keyb
84
97
  [KeyboardType.Numpad]: MATH_ENTRY_NUMBERS_US_KEYBOARD_GROUP,
85
98
  },
86
99
  [Locale.SW]: {
87
- [KeyboardType.Basic]: MATH_ENTRY_BASIC_KEYBOARD_GROUP,
100
+ [KeyboardType.Basic]: MATH_ENTRY_BASIC_SW_KEYBOARD_GROUP,
88
101
  [KeyboardType.BasicExtended]: MATH_ENTRY_BASIC_SW_EXTENDED,
102
+ [KeyboardType.BasicExtendedMobile]: MATH_ENTRY_BASIC_EXTENDED_MOBILE_SW,
89
103
  [KeyboardType.BasicExtendedPlus]: MATH_ENTRY_BASIC_EXTENDED_PLUS_SW,
104
+ [KeyboardType.BasicExtendedPlusMobile]: MATH_ENTRY_BASIC_EXTENDED_PLUS_MOBILE_SW,
90
105
  [KeyboardType.BasicUnits]: {
91
106
  ...MATH_ENTRY_LENGTH_UNITS_US_KEYBOARD_GROUPS,
92
107
  keys: MATH_ENTRY_LENGTH_UNITS_US_KEYBOARD_GROUPS.keys[0],
@@ -4,3 +4,5 @@ export const DEFAULT_KEY_ICON_PROPS = {
4
4
  size: 16,
5
5
  color: COLORS.NEUTRAL_9,
6
6
  } as const
7
+
8
+ export const MAX_WIDTH_FOR_MOBILE_LAYOUT = 1180
@@ -20,47 +20,47 @@ export enum MathTextSymbol {
20
20
  export const MATH_TEXT_SYMBOLS: MathKeysGroup<typeof MathTextSymbol> = {
21
21
  [MathTextSymbol.A]: {
22
22
  label: 'a',
23
- mathliveValue: '$a$',
23
+ mathliveValue: 'a',
24
24
  katexValue: 'a',
25
25
  },
26
26
  [MathTextSymbol.B]: {
27
27
  label: 'b',
28
- mathliveValue: '$b$',
28
+ mathliveValue: 'b',
29
29
  katexValue: 'b',
30
30
  },
31
31
  [MathTextSymbol.C]: {
32
32
  label: 'c',
33
- mathliveValue: '$c$',
33
+ mathliveValue: 'c',
34
34
  katexValue: 'c',
35
35
  },
36
36
  [MathTextSymbol.F]: {
37
37
  label: 'f',
38
- mathliveValue: '$f$',
38
+ mathliveValue: 'f',
39
39
  katexValue: 'f',
40
40
  },
41
41
  [MathTextSymbol.G]: {
42
42
  label: 'g',
43
- mathliveValue: '$g$',
43
+ mathliveValue: 'g',
44
44
  katexValue: 'g',
45
45
  },
46
46
  [MathTextSymbol.H]: {
47
47
  label: 'h',
48
- mathliveValue: '$h$',
48
+ mathliveValue: 'h',
49
49
  katexValue: 'h',
50
50
  },
51
51
  [MathTextSymbol.X]: {
52
52
  icon: <XIcon {...DEFAULT_KEY_ICON_PROPS} />,
53
- mathliveValue: '$x$',
53
+ mathliveValue: 'x',
54
54
  katexValue: 'x',
55
55
  },
56
56
  [MathTextSymbol.Y]: {
57
57
  icon: <YIcon {...DEFAULT_KEY_ICON_PROPS} />,
58
- mathliveValue: '$y$',
58
+ mathliveValue: 'y',
59
59
  katexValue: 'y',
60
60
  },
61
61
  [MathTextSymbol.Z]: {
62
62
  icon: <ZIcon {...DEFAULT_KEY_ICON_PROPS} />,
63
- mathliveValue: '$z$',
63
+ mathliveValue: 'z',
64
64
  katexValue: 'z',
65
65
  },
66
66
  }
@@ -1,14 +1,17 @@
1
1
  import { ReactNode } from 'react'
2
2
  import { SelectOptionColor } from '@magmamath/react-native-ui'
3
+ import { GestureResponderEvent } from 'react-native'
3
4
 
4
5
  export const enum KeyboardType {
5
6
  AlgebraAdvanced = 'AlgebraAdvanced',
6
7
  Basic = 'Basic',
7
8
  BasicExtended = 'BasicExtended',
9
+ BasicExtendedMobile = 'BasicExtendedMobile',
8
10
  BasicTime = 'BasicTime',
9
11
  BasicCurrency = 'BasicCurrency',
10
12
  BasicUnits = 'BasicUnits',
11
13
  BasicExtendedPlus = 'BasicExtendedPlus',
14
+ BasicExtendedPlusMobile = 'BasicExtendedPlusMobile',
12
15
  Numpad = 'Numpad',
13
16
  }
14
17
 
@@ -22,6 +25,7 @@ export type KeyboardKey = {
22
25
  }
23
26
 
24
27
  export type KeyboardKeyValue = {
28
+ event: GestureResponderEvent
25
29
  katexValue: string
26
30
  mathliveValue?: string
27
31
  isSpecialSymbol?: boolean