@magmamath/students-features 0.9.105 → 0.9.106-rc.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/.idea/workspace.xml +49 -46
- package/dist/commonjs/features/keyboard/components/AlgebraLayout/AlgebraLayout.js +2 -2
- package/dist/commonjs/features/keyboard/components/AlgebraLayout/AlgebraLayout.js.map +1 -1
- package/dist/commonjs/features/keyboard/components/BasicLayout/BasicLayout.js +2 -2
- package/dist/commonjs/features/keyboard/components/BasicLayout/BasicLayout.js.map +1 -1
- package/dist/commonjs/features/keyboard/components/BasicPlusPlusLayout/BasicPlusPlusLayout.js +2 -2
- package/dist/commonjs/features/keyboard/components/BasicPlusPlusLayout/BasicPlusPlusLayout.js.map +1 -1
- package/dist/commonjs/features/keyboard/components/Keyboard.js +2 -2
- package/dist/commonjs/features/keyboard/components/Keyboard.js.map +1 -1
- package/dist/commonjs/features/keyboard/components/MainLayout/MainLayout.js +1 -6
- package/dist/commonjs/features/keyboard/components/MainLayout/MainLayout.js.map +1 -1
- package/dist/commonjs/features/keyboard/constants/constants.js +1 -1
- package/dist/commonjs/features/keyboard/constants/keyboardLayouts.js +19 -3
- package/dist/commonjs/features/keyboard/constants/keyboardLayouts.js.map +1 -1
- package/dist/commonjs/features/keyboard/helpers.js +7 -0
- package/dist/commonjs/features/keyboard/helpers.js.map +1 -1
- package/dist/commonjs/features/keyboard/types/MathKeysGroups/basicOperators.js +1 -1
- package/dist/commonjs/features/keyboard/types/MathKeysGroups/basicOperators.js.map +1 -1
- package/dist/module/features/keyboard/components/AlgebraLayout/AlgebraLayout.js +3 -3
- package/dist/module/features/keyboard/components/AlgebraLayout/AlgebraLayout.js.map +1 -1
- package/dist/module/features/keyboard/components/BasicLayout/BasicLayout.js +2 -2
- package/dist/module/features/keyboard/components/BasicLayout/BasicLayout.js.map +1 -1
- package/dist/module/features/keyboard/components/BasicPlusPlusLayout/BasicPlusPlusLayout.js +2 -2
- package/dist/module/features/keyboard/components/BasicPlusPlusLayout/BasicPlusPlusLayout.js.map +1 -1
- package/dist/module/features/keyboard/components/Keyboard.js +2 -2
- package/dist/module/features/keyboard/components/Keyboard.js.map +1 -1
- package/dist/module/features/keyboard/components/MainLayout/MainLayout.js +2 -7
- package/dist/module/features/keyboard/components/MainLayout/MainLayout.js.map +1 -1
- package/dist/module/features/keyboard/constants/constants.js +1 -1
- package/dist/module/features/keyboard/constants/keyboardLayouts.js +18 -3
- package/dist/module/features/keyboard/constants/keyboardLayouts.js.map +1 -1
- package/dist/module/features/keyboard/helpers.js +5 -0
- package/dist/module/features/keyboard/helpers.js.map +1 -1
- package/dist/module/features/keyboard/types/MathKeysGroups/basicOperators.js +1 -1
- package/dist/module/features/keyboard/types/MathKeysGroups/basicOperators.js.map +1 -1
- package/dist/typescript/commonjs/features/keyboard/components/AlgebraLayout/AlgebraLayout.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/keyboard/components/BasicPlusPlusLayout/BasicPlusPlusLayout.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/keyboard/components/MainLayout/MainLayout.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/keyboard/constants/constants.d.ts +1 -1
- package/dist/typescript/commonjs/features/keyboard/constants/keyboardLayouts.d.ts +4 -0
- package/dist/typescript/commonjs/features/keyboard/constants/keyboardLayouts.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/keyboard/helpers.d.ts +1 -0
- package/dist/typescript/commonjs/features/keyboard/helpers.d.ts.map +1 -1
- package/dist/typescript/module/features/keyboard/components/AlgebraLayout/AlgebraLayout.d.ts.map +1 -1
- package/dist/typescript/module/features/keyboard/components/BasicPlusPlusLayout/BasicPlusPlusLayout.d.ts.map +1 -1
- package/dist/typescript/module/features/keyboard/components/MainLayout/MainLayout.d.ts.map +1 -1
- package/dist/typescript/module/features/keyboard/constants/constants.d.ts +1 -1
- package/dist/typescript/module/features/keyboard/constants/keyboardLayouts.d.ts +4 -0
- package/dist/typescript/module/features/keyboard/constants/keyboardLayouts.d.ts.map +1 -1
- package/dist/typescript/module/features/keyboard/helpers.d.ts +1 -0
- package/dist/typescript/module/features/keyboard/helpers.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/features/keyboard/components/AlgebraLayout/AlgebraLayout.tsx +4 -3
- package/src/features/keyboard/components/BasicLayout/BasicLayout.tsx +2 -2
- package/src/features/keyboard/components/BasicPlusPlusLayout/BasicPlusPlusLayout.tsx +3 -2
- package/src/features/keyboard/components/Keyboard.tsx +2 -2
- package/src/features/keyboard/components/MainLayout/MainLayout.tsx +2 -6
- package/src/features/keyboard/constants/constants.ts +1 -1
- package/src/features/keyboard/constants/keyboardLayouts.ts +17 -0
- package/src/features/keyboard/helpers.ts +6 -0
- package/src/features/keyboard/types/MathKeysGroups/basicOperators.tsx +1 -1
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import React, { useEffect, useMemo, useRef, useState, useCallback } from 'react'
|
|
2
|
-
import { Animated, StyleSheet,
|
|
2
|
+
import { Animated, StyleSheet, View } from 'react-native'
|
|
3
3
|
import { SelectOptionColor, IS_MOBILE, IS_WEB } from '@magmamath/react-native-ui'
|
|
4
4
|
import { getLayoutByCharType, isBasicPlusPlusLayout } from '../../constants/keyboardLayouts'
|
|
5
5
|
import { KeyboardKey, KeyboardKeyValue } from '../../types/types'
|
|
6
6
|
import { UnderlinedLayout } from '../UnderlinedLayout/UnderlinedLayout'
|
|
7
|
-
import { MOBILE_LAYOUT_WIDTH } from '../../constants/constants'
|
|
8
7
|
|
|
9
8
|
type LayoutProps = {
|
|
10
9
|
onKeyPress: (key: KeyboardKeyValue) => void
|
|
@@ -27,11 +26,8 @@ export const MainLayout = ({
|
|
|
27
26
|
const fadeAnim = useRef(new Animated.Value(showUnderlinedKeys ? 1 : 0)).current
|
|
28
27
|
const fadeRef = useRef<Animated.CompositeAnimation | null>(null)
|
|
29
28
|
|
|
30
|
-
const { width } = useWindowDimensions()
|
|
31
|
-
const isMobile = width <= MOBILE_LAYOUT_WIDTH || IS_MOBILE
|
|
32
|
-
|
|
33
29
|
const Layout = useMemo(() => getLayoutByCharType(characterType), [characterType])
|
|
34
|
-
const isUnderlinedLayoutVisible = isUnderlinedVisible && !isSecondaryLayoutSelected && !
|
|
30
|
+
const isUnderlinedLayoutVisible = isUnderlinedVisible && !isSecondaryLayoutSelected && !IS_MOBILE
|
|
35
31
|
|
|
36
32
|
const animateFade = useCallback(
|
|
37
33
|
(toValue: number, onComplete?: () => void) => {
|
|
@@ -7,6 +7,7 @@ import { CurrencyBasicLayout } from '../components/BasicLayout/CurrencyBasicLayo
|
|
|
7
7
|
import { UnitsLayout } from '../components/UnitsLayout/UnitsLayout'
|
|
8
8
|
import { BasicPlusPlusLayout } from '../components/BasicPlusPlusLayout/BasicPlusPlusLayout'
|
|
9
9
|
import { MyScriptMathCharacterTypes } from '../../../types/characterTypes'
|
|
10
|
+
import { MOBILE_LAYOUT_WIDTH } from './constants'
|
|
10
11
|
|
|
11
12
|
export const KEYBOARD_LAYOUTS = {
|
|
12
13
|
[KeyboardType.AlgebraAdvanced]: {
|
|
@@ -18,10 +19,12 @@ export const KEYBOARD_LAYOUTS = {
|
|
|
18
19
|
MyScriptMathCharacterTypes.ALGEBRA_GREEK,
|
|
19
20
|
MyScriptMathCharacterTypes.GENERAL_MATH,
|
|
20
21
|
],
|
|
22
|
+
mobileBreakpoint: 1300,
|
|
21
23
|
},
|
|
22
24
|
[KeyboardType.Basic]: {
|
|
23
25
|
Component: BasicLayout,
|
|
24
26
|
characterTypes: [MyScriptMathCharacterTypes.NUMBERS_WHOLE],
|
|
27
|
+
mobileBreakpoint: 990,
|
|
25
28
|
},
|
|
26
29
|
[KeyboardType.BasicPlus]: {
|
|
27
30
|
Component: BasicPlusLayout,
|
|
@@ -56,6 +59,7 @@ export const KEYBOARD_LAYOUTS = {
|
|
|
56
59
|
MyScriptMathCharacterTypes.GEOM_ANGLES,
|
|
57
60
|
MyScriptMathCharacterTypes.GEOM_COORDINATE,
|
|
58
61
|
],
|
|
62
|
+
mobileBreakpoint: 1220,
|
|
59
63
|
},
|
|
60
64
|
}
|
|
61
65
|
|
|
@@ -72,6 +76,19 @@ export function getLayoutByCharType(charType?: number) {
|
|
|
72
76
|
return AlgebraLayout
|
|
73
77
|
}
|
|
74
78
|
|
|
79
|
+
export function getMobileBreakpointByCharType(charType?: number) {
|
|
80
|
+
if (!charType) {
|
|
81
|
+
return KEYBOARD_LAYOUTS[KeyboardType.AlgebraAdvanced].mobileBreakpoint
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
for (const layout of Object.values(KEYBOARD_LAYOUTS)) {
|
|
85
|
+
if (layout.characterTypes.includes(charType)) {
|
|
86
|
+
return 'mobileBreakpoint' in layout ? layout.mobileBreakpoint : MOBILE_LAYOUT_WIDTH
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
return KEYBOARD_LAYOUTS[KeyboardType.AlgebraAdvanced].mobileBreakpoint
|
|
90
|
+
}
|
|
91
|
+
|
|
75
92
|
export function isBasicPlusPlusLayout(charType?: number) {
|
|
76
93
|
if (!charType) {
|
|
77
94
|
return true
|
|
@@ -3,6 +3,7 @@ import { KeyboardGroup, KeyboardType } from './types/types'
|
|
|
3
3
|
import { Locale } from '../../shared/translation/types'
|
|
4
4
|
import { MATH_ENTRY_ALGEBRA_KEYBOARD_GROUP } from './components/AlgebraLayout/keyboardGroups'
|
|
5
5
|
import { IS_WEB } from '@magmamath/react-native-ui'
|
|
6
|
+
import { getMobileBreakpointByCharType } from './constants/keyboardLayouts'
|
|
6
7
|
|
|
7
8
|
export function getKeyboardGroup(locale: Locale, type: KeyboardType): KeyboardGroup {
|
|
8
9
|
return KEYBOARD_GROUPS_BY_LOCALE[locale]?.[type] ?? MATH_ENTRY_ALGEBRA_KEYBOARD_GROUP
|
|
@@ -16,3 +17,8 @@ export const getIsIpadOrIphoneDevice = () => {
|
|
|
16
17
|
const isIpadOS = navigator?.maxTouchPoints > 2 && /MacIntel/.test(navigator.platform)
|
|
17
18
|
return isIOS || isIpadOS
|
|
18
19
|
}
|
|
20
|
+
|
|
21
|
+
export const isMobileWidth = (width: number, characterType?: number) => {
|
|
22
|
+
const layoutWidth = getMobileBreakpointByCharType(characterType)
|
|
23
|
+
return width <= layoutWidth
|
|
24
|
+
}
|