uilib-native 3.0.6 → 3.0.8
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/android/build/.transforms/{7b85a4cb719e06b1cadba5128a161508 → 078d1206f8e28097fd785bd635dfbdf6}/results.bin +0 -0
- package/android/build/.transforms/078d1206f8e28097fd785bd635dfbdf6/transformed/classes/classes.dex +0 -0
- package/android/build/intermediates/compile_library_classes_jar/debug/classes.jar +0 -0
- package/android/build/intermediates/compiled_local_resources/debug/out/layout_wheel_picker.xml.flat +0 -0
- package/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml +1 -1
- package/android/build/intermediates/incremental/mergeDebugShaders/merger.xml +1 -1
- package/android/build/intermediates/incremental/packageDebugAssets/merger.xml +1 -1
- package/android/build/intermediates/incremental/packageDebugResources/compile-file-map.properties +2 -2
- package/android/build/intermediates/incremental/packageDebugResources/merger.xml +2 -2
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/BuildConfig.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/UiLibPackageList.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/highlighterview/HighlightFrame.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/highlighterview/HighlightViewTagParams.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/highlighterview/HighlighterView.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/highlighterview/HighlighterViewManager$1.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/highlighterview/HighlighterViewManager.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/highlighterview/HighlighterViewPackage.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/highlighterview/ReactHacks.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/highlighterview/ReflectionUtils.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/highlighterview/UiUtils.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/AppContextHolder$1.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/AppContextHolder.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/CustomKeyboardLayout$1.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/CustomKeyboardLayout$2.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/CustomKeyboardLayout$3.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/CustomKeyboardLayout$4.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/CustomKeyboardLayout$5.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/CustomKeyboardLayout.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/CustomKeyboardRootView.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/CustomKeyboardRootViewManager.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/CustomKeyboardRootViewShadow.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/KeyboardInputModule.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/KeyboardInputPackage.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/ReactContextHolder.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/ReactScreenMonitor$1.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/ReactScreenMonitor$Listener.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/ReactScreenMonitor.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/ReactSoftKeyboardMonitor$1.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/ReactSoftKeyboardMonitor$2.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/ReactSoftKeyboardMonitor$Listener.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/ReactSoftKeyboardMonitor.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/utils/PredicateFunc.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/utils/RuntimeUtils$1.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/utils/RuntimeUtils$2.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/utils/RuntimeUtils.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/utils/ViewUtils$1.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/utils/ViewUtils$VisibleViewClassMatchPredicate.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/keyboardinput/utils/ViewUtils.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/textinput/DefaultKeyListener.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/textinput/KeyListenerProxy.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/textinput/TextInputDelKeyHandlerModule$1.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/textinput/TextInputDelKeyHandlerModule.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/textinput/TextInputDelKeyHandlerPackage.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/textinput/ViewUtils.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/utils/LogForwarder$LogType.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/utils/LogForwarder.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/wheelpicker/WheelPicker$1.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/wheelpicker/WheelPicker.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/wheelpicker/WheelPickerManager.class +0 -0
- package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/wheelpicker/WheelPickerPackage.class +0 -0
- package/android/build/intermediates/manifest_merge_blame_file/debug/manifest-merger-blame-debug-report.txt +2 -2
- package/android/build/intermediates/runtime_library_classes_jar/debug/classes.jar +0 -0
- package/android/build/outputs/logs/manifest-merger-debug-report.txt +18 -18
- package/components/Keyboard/KeyboardInput/KeyboardAccessoryView.tsx +26 -106
- package/components/Keyboard/KeyboardInput/KeyboardRegistry.ts +2 -1
- package/components/Keyboard/KeyboardInput/keyboardAccessoryView.api.json +57 -0
- package/components/Keyboard/KeyboardInput/keyboardRegistry.api.json +50 -0
- package/components/Keyboard/KeyboardTracking/KeyboardTrackingView/index.tsx +78 -36
- package/components/Keyboard/KeyboardTracking/KeyboardTrackingView/keyboardTrackingView.api.json +95 -0
- package/components/Keyboard/KeyboardTracking/keyboardAwareInsetsView.api.json +14 -0
- package/components/index.ts +4 -2
- package/ios/reactnativeuilib/keyboardtrackingview/KeyboardTrackingViewTempManager.m +15 -20
- package/ios/reactnativeuilib.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
- package/ios/reactnativeuilib.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
- package/ios/reactnativeuilib.xcodeproj/project.xcworkspace/xcuserdata/inbalti.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
- package/ios/reactnativeuilib.xcodeproj/xcuserdata/inbalti.xcuserdatad/xcschemes/xcschememanagement.plist +14 -0
- package/package.json +1 -1
- package/android/build/.transforms/7b85a4cb719e06b1cadba5128a161508/transformed/classes/classes.dex +0 -0
- package/android/build/.transforms/faa2afe0bc7898c632042480c288ecc2/results.bin +0 -1
- package/android/build/.transforms/faa2afe0bc7898c632042480c288ecc2/transformed/classes/classes.dex +0 -0
|
File without changes
|
package/android/build/.transforms/078d1206f8e28097fd785bd635dfbdf6/transformed/classes/classes.dex
ADDED
|
Binary file
|
|
Binary file
|
package/android/build/intermediates/compiled_local_resources/debug/out/layout_wheel_picker.xml.flat
CHANGED
|
Binary file
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
-
<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/
|
|
2
|
+
<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/jniLibs"/></dataSet><dataSet config="debug" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/debug/jniLibs"/></dataSet></merger>
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
-
<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/
|
|
2
|
+
<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/shaders"/></dataSet><dataSet config="debug" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/debug/shaders"/></dataSet></merger>
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
-
<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/
|
|
2
|
+
<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/assets"/><source path="/Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/build/intermediates/shader_assets/debug/out"/></dataSet><dataSet config="debug" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/debug/assets"/></dataSet></merger>
|
package/android/build/intermediates/incremental/packageDebugResources/compile-file-map.properties
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
#
|
|
2
|
-
/Users/
|
|
1
|
+
#Wed Mar 16 10:21:34 IST 2022
|
|
2
|
+
/Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/res/layout/wheel_picker.xml=/Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/build/intermediates/packaged_res/debug/layout/wheel_picker.xml
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
-
<merger version="3"><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="main$Generated" generated="true" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/
|
|
2
|
+
<merger version="3"><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="main$Generated" generated="true" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/res"/><source path="/Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/build/generated/res/rs/debug"/><source path="/Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/build/generated/res/resValues/debug"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="main" generated-set="main$Generated" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/res"><file name="wheel_picker" path="/Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/res/layout/wheel_picker.xml" qualifiers="" type="layout"/><file path="/Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/res/values/colors.xml" qualifiers=""><color name="colorPrimary">#3F51B5</color><color name="colorPrimaryDark">#303F9F</color><color name="colorAccent">#FF4081</color><color name="dividerColor">#459FED</color><color name="numberPickerDivider">#FF4081</color><color name="title">#20303c</color></file><file path="/Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/res/values/styles.xml" qualifiers=""><style name="NumberPickerTextColorStyle">
|
|
3
3
|
<item name="android:textColorPrimary">@color/dividerColor</item>
|
|
4
4
|
<item name="android:editTextColor">@color/dividerColor</item>
|
|
5
5
|
<item name="android:textSize">20dp</item>
|
|
6
6
|
<item name="colorControlNormal">@color/dividerColor</item>
|
|
7
|
-
</style></file></source><source path="/Users/
|
|
7
|
+
</style></file></source><source path="/Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/build/generated/res/rs/debug"/><source path="/Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/build/generated/res/resValues/debug"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="debug$Generated" generated="true" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/debug/res"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="debug" generated-set="debug$Generated" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/debug/res"/></dataSet><mergedItems/></merger>
|
package/android/build/intermediates/javac/debug/classes/com/wix/reactnativeuilib/BuildConfig.class
CHANGED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
4
|
|
5
5
|
5 <uses-sdk
|
|
6
6
|
6 android:minSdkVersion="21"
|
|
7
|
-
6-->/Users/
|
|
7
|
+
6-->/Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/AndroidManifest.xml
|
|
8
8
|
7 android:targetSdkVersion="30" />
|
|
9
|
-
7-->/Users/
|
|
9
|
+
7-->/Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/AndroidManifest.xml
|
|
10
10
|
8
|
|
11
11
|
9</manifest>
|
|
Binary file
|
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
-- Merging decision tree log ---
|
|
2
2
|
manifest
|
|
3
|
-
ADDED from /Users/
|
|
4
|
-
INJECTED from /Users/
|
|
5
|
-
INJECTED from /Users/
|
|
3
|
+
ADDED from /Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/AndroidManifest.xml:2:1-5:12
|
|
4
|
+
INJECTED from /Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/AndroidManifest.xml:2:1-5:12
|
|
5
|
+
INJECTED from /Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/AndroidManifest.xml:2:1-5:12
|
|
6
6
|
package
|
|
7
|
-
ADDED from /Users/
|
|
8
|
-
INJECTED from /Users/
|
|
9
|
-
INJECTED from /Users/
|
|
7
|
+
ADDED from /Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/AndroidManifest.xml:4:5-39
|
|
8
|
+
INJECTED from /Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/AndroidManifest.xml
|
|
9
|
+
INJECTED from /Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/AndroidManifest.xml
|
|
10
10
|
xmlns:android
|
|
11
|
-
ADDED from /Users/
|
|
11
|
+
ADDED from /Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/AndroidManifest.xml:3:5-63
|
|
12
12
|
uses-sdk
|
|
13
|
-
INJECTED from /Users/
|
|
14
|
-
INJECTED from /Users/
|
|
15
|
-
INJECTED from /Users/
|
|
16
|
-
INJECTED from /Users/
|
|
17
|
-
INJECTED from /Users/
|
|
13
|
+
INJECTED from /Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/AndroidManifest.xml reason: use-sdk injection requested
|
|
14
|
+
INJECTED from /Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/AndroidManifest.xml
|
|
15
|
+
INJECTED from /Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/AndroidManifest.xml
|
|
16
|
+
INJECTED from /Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/AndroidManifest.xml
|
|
17
|
+
INJECTED from /Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/AndroidManifest.xml
|
|
18
18
|
android:targetSdkVersion
|
|
19
|
-
INJECTED from /Users/
|
|
20
|
-
ADDED from /Users/
|
|
21
|
-
INJECTED from /Users/
|
|
19
|
+
INJECTED from /Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/AndroidManifest.xml
|
|
20
|
+
ADDED from /Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/AndroidManifest.xml
|
|
21
|
+
INJECTED from /Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/AndroidManifest.xml
|
|
22
22
|
android:minSdkVersion
|
|
23
|
-
INJECTED from /Users/
|
|
24
|
-
ADDED from /Users/
|
|
25
|
-
INJECTED from /Users/
|
|
23
|
+
INJECTED from /Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/AndroidManifest.xml
|
|
24
|
+
ADDED from /Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/AndroidManifest.xml
|
|
25
|
+
INJECTED from /Users/inbalti/Documents/WIX_PUBLIC/react-native-ui-lib/lib/android/src/main/AndroidManifest.xml
|
|
@@ -9,31 +9,20 @@ import {
|
|
|
9
9
|
BackHandler,
|
|
10
10
|
LayoutChangeEvent
|
|
11
11
|
} from 'react-native';
|
|
12
|
-
import KeyboardTrackingView from '../KeyboardTracking/KeyboardTrackingView';
|
|
12
|
+
import KeyboardTrackingView, {KeyboardTrackingViewProps} from '../KeyboardTracking/KeyboardTrackingView';
|
|
13
13
|
import CustomKeyboardView from './CustomKeyboardView';
|
|
14
14
|
import KeyboardUtils from './utils/KeyboardUtils';
|
|
15
15
|
|
|
16
16
|
const IsIOS = Platform.OS === 'ios';
|
|
17
17
|
const IsAndroid = Platform.OS === 'android';
|
|
18
18
|
|
|
19
|
-
|
|
20
|
-
? {
|
|
21
|
-
NONE: NativeModules.KeyboardTrackingViewTempManager?.KeyboardTrackingScrollBehaviorNone,
|
|
22
|
-
SCROLL_TO_BOTTOM_INVERTED_ONLY:
|
|
23
|
-
NativeModules.KeyboardTrackingViewTempManager?.KeyboardTrackingScrollBehaviorScrollToBottomInvertedOnly,
|
|
24
|
-
FIXED_OFFSET: NativeModules.KeyboardTrackingViewTempManager?.KeyboardTrackingScrollBehaviorFixedOffset
|
|
25
|
-
}
|
|
26
|
-
: {};
|
|
19
|
+
type kbTrackingViewProps = Pick<KeyboardTrackingViewProps, 'scrollBehavior' | 'revealKeyboardInteractive' | 'manageScrollView' | 'requiresSameParentToManageScrollView' | 'allowHitsOutsideBounds' | 'addBottomView' | 'bottomViewColor' | 'useSafeArea' | 'usesBottomTabs'>;
|
|
27
20
|
|
|
28
|
-
export type KeyboardAccessoryViewProps = {
|
|
21
|
+
export type KeyboardAccessoryViewProps = kbTrackingViewProps & {
|
|
29
22
|
/**
|
|
30
23
|
* Content to be rendered above the keyboard
|
|
31
24
|
*/
|
|
32
25
|
renderContent?: () => React.ReactElement;
|
|
33
|
-
/**
|
|
34
|
-
* A callback for when the height is changed
|
|
35
|
-
*/
|
|
36
|
-
onHeightChanged?: (height: number) => void;
|
|
37
26
|
/**
|
|
38
27
|
* iOS only.
|
|
39
28
|
* The reference to the actual text input (or the keyboard may not reset when instructed to, etc.).
|
|
@@ -48,10 +37,14 @@ export type KeyboardAccessoryViewProps = {
|
|
|
48
37
|
* The props that will be sent to the KeyboardComponent
|
|
49
38
|
*/
|
|
50
39
|
kbInitialProps?: any;
|
|
40
|
+
/**
|
|
41
|
+
* A callback for when the height is changed
|
|
42
|
+
*/
|
|
43
|
+
onHeightChanged?: (height: number) => void;
|
|
51
44
|
/**
|
|
52
45
|
* Callback that will be called when an item on the keyboard has been pressed.
|
|
53
46
|
*/
|
|
54
|
-
onItemSelected?: () => void;
|
|
47
|
+
onItemSelected?: (component?: string, args?: any) => void;
|
|
55
48
|
/**
|
|
56
49
|
* Callback that will be called if KeyboardRegistry.requestShowKeyboard is called.
|
|
57
50
|
*/
|
|
@@ -61,84 +54,33 @@ export type KeyboardAccessoryViewProps = {
|
|
|
61
54
|
*/
|
|
62
55
|
onKeyboardResigned?: () => void;
|
|
63
56
|
/**
|
|
64
|
-
*
|
|
65
|
-
*
|
|
66
|
-
* NONE
|
|
67
|
-
*
|
|
68
|
-
* default: FIXED_OFFSET
|
|
57
|
+
* @deprecated
|
|
58
|
+
* Please use 'scrollBehavior' prop instead
|
|
59
|
+
* The scrolling behavior (use KeyboardAccessoryView.scrollBehaviors.NONE | SCROLL_TO_BOTTOM_INVERTED_ONLY | FIXED_OFFSET)
|
|
69
60
|
*/
|
|
70
61
|
iOSScrollBehavior?: number;
|
|
71
|
-
/**
|
|
72
|
-
* iOS only.
|
|
73
|
-
* Show the keyboard on a negative scroll
|
|
74
|
-
*
|
|
75
|
-
* default: false
|
|
76
|
-
*/
|
|
77
|
-
revealKeyboardInteractive?: boolean;
|
|
78
|
-
/**
|
|
79
|
-
* iOS only.
|
|
80
|
-
* Set to false to turn off inset management and manage it yourself
|
|
81
|
-
*
|
|
82
|
-
* default: true
|
|
83
|
-
*/
|
|
84
|
-
manageScrollView?: boolean;
|
|
85
|
-
/**
|
|
86
|
-
* iOS only.
|
|
87
|
-
* Set to true manageScrollView is set to true and still does not work,
|
|
88
|
-
* it means that the ScrollView found is the wrong one and you'll have
|
|
89
|
-
* to have the KeyboardAccessoryView and the ScrollView as siblings
|
|
90
|
-
* and set this to true
|
|
91
|
-
*
|
|
92
|
-
* default: false
|
|
93
|
-
*/
|
|
94
|
-
requiresSameParentToManageScrollView?: boolean;
|
|
95
|
-
/**
|
|
96
|
-
* iOS only.
|
|
97
|
-
* Add a (white) SafeArea view beneath the KeyboardAccessoryView
|
|
98
|
-
*
|
|
99
|
-
* default: false
|
|
100
|
-
*/
|
|
101
|
-
addBottomView?: boolean;
|
|
102
|
-
/**
|
|
103
|
-
* iOS only.
|
|
104
|
-
* Allow hitting sub-views that are placed beyond the view bounds
|
|
105
|
-
*
|
|
106
|
-
* default: false
|
|
107
|
-
*/
|
|
108
|
-
allowHitsOutsideBounds?: boolean;
|
|
109
|
-
|
|
110
|
-
/**
|
|
111
|
-
* iOS only.
|
|
112
|
-
* Whether or not to handle SafeArea
|
|
113
|
-
* default: true
|
|
114
|
-
*/
|
|
115
|
-
useSafeArea?: boolean;
|
|
116
|
-
/**
|
|
117
|
-
* iOS only.
|
|
118
|
-
* Whether or not to include bottom tab bat inset
|
|
119
|
-
* default: true
|
|
120
|
-
*/
|
|
121
|
-
usesBottomTabs?: boolean;
|
|
122
|
-
|
|
123
62
|
children?: React.ReactChild;
|
|
124
63
|
};
|
|
125
64
|
|
|
126
65
|
/**
|
|
127
66
|
* @description: View that allows replacing the default keyboard with other components
|
|
128
|
-
* @example: https://github.com/wix/react-native-ui-lib/blob/master/demo/src/screens/nativeComponentScreens/
|
|
67
|
+
* @example: https://github.com/wix/react-native-ui-lib/blob/master/demo/src/screens/nativeComponentScreens/keyboardAccessory/KeyboardAccessoryViewScreen.js
|
|
129
68
|
* @gif: https://github.com/wix/react-native-ui-lib/blob/master/demo/showcase/KeyboardAccessoryView/KeyboardAccessoryView.gif?raw=true
|
|
130
69
|
*/
|
|
131
70
|
class KeyboardAccessoryView extends Component<KeyboardAccessoryViewProps> {
|
|
132
|
-
|
|
133
|
-
|
|
71
|
+
/**
|
|
72
|
+
* @deprecated Please use KeyboardAccessoryView.scrollBehaviors instead
|
|
73
|
+
*/
|
|
74
|
+
static iosScrollBehaviors = KeyboardTrackingView.scrollBehaviors; //TODO: remove on V7
|
|
75
|
+
static scrollBehaviors = KeyboardTrackingView.scrollBehaviors;
|
|
134
76
|
|
|
135
77
|
static defaultProps = {
|
|
136
|
-
iOSScrollBehavior: -1,
|
|
137
78
|
revealKeyboardInteractive: false,
|
|
138
79
|
manageScrollView: true,
|
|
139
80
|
requiresSameParentToManageScrollView: false,
|
|
140
81
|
addBottomView: false,
|
|
141
|
-
allowHitsOutsideBounds: false
|
|
82
|
+
allowHitsOutsideBounds: false,
|
|
83
|
+
scrollBehavior: KeyboardTrackingView.scrollBehaviors.FIXED_OFFSET
|
|
142
84
|
};
|
|
143
85
|
|
|
144
86
|
// TODO: fix
|
|
@@ -185,16 +127,6 @@ class KeyboardAccessoryView extends Component<KeyboardAccessoryViewProps> {
|
|
|
185
127
|
return false;
|
|
186
128
|
}
|
|
187
129
|
|
|
188
|
-
getIOSTrackingScrollBehavior() {
|
|
189
|
-
const {iOSScrollBehavior} = this.props;
|
|
190
|
-
|
|
191
|
-
let scrollBehavior = iOSScrollBehavior;
|
|
192
|
-
if (IsIOS && scrollBehavior === -1) {
|
|
193
|
-
scrollBehavior = KeyboardAccessoryView.iosScrollBehaviors.FIXED_OFFSET;
|
|
194
|
-
}
|
|
195
|
-
return scrollBehavior;
|
|
196
|
-
}
|
|
197
|
-
|
|
198
130
|
async getNativeProps() {
|
|
199
131
|
if (this.trackingViewRef) {
|
|
200
132
|
return await this.trackingViewRef.getNativeProps();
|
|
@@ -248,44 +180,32 @@ class KeyboardAccessoryView extends Component<KeyboardAccessoryViewProps> {
|
|
|
248
180
|
|
|
249
181
|
render() {
|
|
250
182
|
const {
|
|
251
|
-
revealKeyboardInteractive,
|
|
252
|
-
manageScrollView,
|
|
253
|
-
requiresSameParentToManageScrollView,
|
|
254
|
-
addBottomView,
|
|
255
|
-
allowHitsOutsideBounds,
|
|
256
183
|
renderContent,
|
|
257
184
|
kbInputRef,
|
|
258
185
|
kbComponent,
|
|
259
186
|
onItemSelected,
|
|
260
187
|
onRequestShowKeyboard,
|
|
261
|
-
|
|
262
|
-
|
|
188
|
+
scrollBehavior,
|
|
189
|
+
iOSScrollBehavior,
|
|
190
|
+
...others
|
|
263
191
|
} = this.props;
|
|
264
192
|
|
|
265
193
|
return (
|
|
266
194
|
<KeyboardTrackingView
|
|
195
|
+
{...others}
|
|
196
|
+
scrollBehavior={IsIOS ? iOSScrollBehavior || scrollBehavior : undefined}
|
|
267
197
|
ref={(r: any) => (this.trackingViewRef = r)}
|
|
268
198
|
style={styles.trackingToolbarContainer}
|
|
269
|
-
// @ts-ignore
|
|
270
199
|
onLayout={this.onContainerComponentHeightChanged}
|
|
271
|
-
scrollBehavior={this.getIOSTrackingScrollBehavior()}
|
|
272
|
-
revealKeyboardInteractive={revealKeyboardInteractive}
|
|
273
|
-
manageScrollView={manageScrollView}
|
|
274
|
-
requiresSameParentToManageScrollView={requiresSameParentToManageScrollView}
|
|
275
|
-
addBottomView={addBottomView}
|
|
276
|
-
allowHitsOutsideBounds={allowHitsOutsideBounds}
|
|
277
|
-
usesBottomTabs={usesBottomTabs}
|
|
278
200
|
>
|
|
279
|
-
<>
|
|
280
|
-
{renderContent?.()}
|
|
281
|
-
</>
|
|
201
|
+
<>{renderContent?.()}</>
|
|
282
202
|
<CustomKeyboardView
|
|
283
203
|
inputRef={kbInputRef}
|
|
284
204
|
component={kbComponent}
|
|
285
205
|
initialProps={this.processInitialProps()}
|
|
286
206
|
onItemSelected={onItemSelected}
|
|
287
207
|
onRequestShowKeyboard={onRequestShowKeyboard}
|
|
288
|
-
useSafeArea={useSafeArea}
|
|
208
|
+
useSafeArea={others.useSafeArea}
|
|
289
209
|
/>
|
|
290
210
|
</KeyboardTrackingView>
|
|
291
211
|
);
|
|
@@ -17,7 +17,7 @@ const getKeyboardsWithIDs = (keyboardIDs: string[]) => {
|
|
|
17
17
|
|
|
18
18
|
/**
|
|
19
19
|
* @description: used for registering keyboards and performing certain actions on the keyboards.
|
|
20
|
-
* @example: https://github.com/wix/react-native-ui-lib/blob/master/demo/src/screens/nativeComponentScreens/
|
|
20
|
+
* @example: https://github.com/wix/react-native-ui-lib/blob/master/demo/src/screens/nativeComponentScreens/keyboardAccessory/demoKeyboards.js
|
|
21
21
|
*/
|
|
22
22
|
export default class KeyboardRegistry {
|
|
23
23
|
static displayName = 'KeyboardRegistry';
|
|
@@ -115,6 +115,7 @@ export default class KeyboardRegistry {
|
|
|
115
115
|
};
|
|
116
116
|
|
|
117
117
|
/**
|
|
118
|
+
* @deprecated
|
|
118
119
|
* iOS only (experimental)
|
|
119
120
|
* Call to make the keyboard full screen
|
|
120
121
|
* componentID (string) - the ID of the keyboard.
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "KeyboardAccessoryView",
|
|
3
|
+
"category": "keyboard",
|
|
4
|
+
"description": "View that allows replacing the default keyboard with other components",
|
|
5
|
+
"example": "https://github.com/wix/react-native-ui-lib/blob/master/demo/src/screens/nativeComponentScreens/keyboardAccessory/KeyboardAccessoryViewScreen.js",
|
|
6
|
+
"images": [
|
|
7
|
+
"https://github.com/wix/react-native-ui-lib/blob/master/demo/showcase/KeyboardAccessoryView/KeyboardAccessoryView.gif?raw=true"
|
|
8
|
+
],
|
|
9
|
+
"props": [
|
|
10
|
+
{
|
|
11
|
+
"name": "renderContent",
|
|
12
|
+
"type": "() => React.ReactElement",
|
|
13
|
+
"description": "Content to be rendered above the keyboard"
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
"name": "kbInputRef",
|
|
17
|
+
"type": "any",
|
|
18
|
+
"description": "The reference to the actual text input (or the keyboard may not reset when instructed to, etc.).\niOS only.",
|
|
19
|
+
"required": true
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"name": "kbComponent",
|
|
23
|
+
"type": "string",
|
|
24
|
+
"description": "The keyboard ID (the componentID sent to KeyboardRegistry)"
|
|
25
|
+
},
|
|
26
|
+
{"name": "kbInitialProps", "type": "any", "description": "The props that will be sent to the KeyboardComponent"},
|
|
27
|
+
{
|
|
28
|
+
"name": "onHeightChanged",
|
|
29
|
+
"type": "(height: number) => void",
|
|
30
|
+
"description": "A callback for when the height is changed"
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"name": "onItemSelected",
|
|
34
|
+
"type": "() => void",
|
|
35
|
+
"description": "Callback that will be called when an item on the keyboard has been pressed."
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"name": "onRequestShowKeyboard",
|
|
39
|
+
"type": "() => void",
|
|
40
|
+
"description": "Callback that will be called if KeyboardRegistry.requestShowKeyboard is called."
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"name": "onKeyboardResigned",
|
|
44
|
+
"type": "() => void",
|
|
45
|
+
"description": "Callback that will be called once the keyboard has been closed"
|
|
46
|
+
}
|
|
47
|
+
],
|
|
48
|
+
"snippet": [
|
|
49
|
+
"<KeyboardAccessoryView",
|
|
50
|
+
" renderContent={this.renderContent()}",
|
|
51
|
+
" kbInputRef={this.inputRef}",
|
|
52
|
+
" kbComponent={$1}",
|
|
53
|
+
" kbInitialProps={$2}",
|
|
54
|
+
" onHeightChanged={this.onHeightChanged()}",
|
|
55
|
+
" scrollBehavior={KeyboardAccessoryView.scrollBehaviors.NONE$3}",
|
|
56
|
+
"/>"
|
|
57
|
+
]}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "KeyboardRegistry",
|
|
3
|
+
"category": "keyboard",
|
|
4
|
+
"description": "used for registering keyboards and performing certain actions on the keyboards.",
|
|
5
|
+
"example": "https://github.com/wix/react-native-ui-lib/blob/master/demo/src/screens/nativeComponentScreens/keyboardAccessory/demoKeyboards.js",
|
|
6
|
+
"props": [
|
|
7
|
+
{
|
|
8
|
+
"name": "registerKeyboard",
|
|
9
|
+
"type": "static function",
|
|
10
|
+
"description": "Register a new keyboard.\ncomponentID (string) - the ID of the keyboard.\ngenerator (function) - a function for the creation of the keyboard.\nparams (object) - to be returned when using other methods (i.e. getKeyboards and getAllKeyboards)."
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
"name": "getKeyboard",
|
|
14
|
+
"type": "static function",
|
|
15
|
+
"description": "Get a specific keyboard\ncomponentID (string) - the ID of the keyboard."
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"name": "getKeyboards",
|
|
19
|
+
"type": "static function",
|
|
20
|
+
"description": "Get keyboards by IDs\ncomponentIDs (string[]) - the ID of the keyboard."
|
|
21
|
+
},
|
|
22
|
+
{"name": "getAllKeyboards", "type": "static function", "description": "Get all keyboards"},
|
|
23
|
+
{
|
|
24
|
+
"name": "addListener",
|
|
25
|
+
"type": "static function",
|
|
26
|
+
"description": "Add a listener for a callback.\nglobalID (string) - ID that includes the componentID and the event name\n (i.e. if componentID='kb1' globalID='kb1.onItemSelected')\ncallback (function) - the callback to be called when the said event happens"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"name": "notifyListeners",
|
|
30
|
+
"type": "static function",
|
|
31
|
+
"description": "Notify that an event has occurred.\nglobalID (string) - ID that includes the componentID and the event name\n (i.e. if componentID='kb1' globalID='kb1.onItemSelected')\nargs (object) - data to be sent to the listener."
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"name": "removeListeners",
|
|
35
|
+
"type": "static function",
|
|
36
|
+
"description": "Remove a listener for a callback.\nglobalID (string) - ID that includes the componentID and the event name\n (i.e. if componentID='kb1' globalID='kb1.onItemSelected')"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"name": "onItemSelected",
|
|
40
|
+
"type": "static function",
|
|
41
|
+
"description": "Default event to be used for when an item on the keyboard has been pressed.\ncomponentID (string) - the ID of the keyboard.\nargs (object) - data to be sent to the listener."
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"name": "requestShowKeyboard",
|
|
45
|
+
"type": "static function",
|
|
46
|
+
"description": "Request to show the keyboard\ncomponentID (string) - the ID of the keyboard."
|
|
47
|
+
}
|
|
48
|
+
],
|
|
49
|
+
"snippet": ["KeyboardRegistry.registerKeyboard('keyboardName$1', () => KeyboardComponent$2)"]
|
|
50
|
+
}
|
|
@@ -1,49 +1,89 @@
|
|
|
1
1
|
import React, {forwardRef} from 'react';
|
|
2
|
-
import {Platform, ViewStyle, ViewProps} from 'react-native';
|
|
2
|
+
import {Platform, NativeModules, ViewStyle, ViewProps} from 'react-native';
|
|
3
3
|
import {default as KeyboardTrackingViewIOS} from './KeyboardTrackingView.ios';
|
|
4
4
|
import {default as KeyboardTrackingViewAndroid} from './KeyboardTrackingView.android';
|
|
5
5
|
|
|
6
6
|
const isAndroid = Platform.OS === 'android';
|
|
7
|
+
const SCROLL_BEHAVIORS = {
|
|
8
|
+
NONE: NativeModules.KeyboardTrackingViewTempManager?.KeyboardTrackingScrollBehaviorNone,
|
|
9
|
+
SCROLL_TO_BOTTOM_INVERTED_ONLY:
|
|
10
|
+
NativeModules.KeyboardTrackingViewTempManager?.KeyboardTrackingScrollBehaviorScrollToBottomInvertedOnly,
|
|
11
|
+
FIXED_OFFSET: NativeModules.KeyboardTrackingViewTempManager?.KeyboardTrackingScrollBehaviorFixedOffset
|
|
12
|
+
};
|
|
7
13
|
|
|
8
14
|
export type KeyboardTrackingViewProps = ViewProps & {
|
|
9
15
|
/**
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
16
|
+
* Enables tracking of the keyboard when it's dismissed interactively (false by default).
|
|
17
|
+
* Why? When using an external keyboard (BT),
|
|
18
|
+
* you still get the keyboard events and the view just hovers when you focus the input.
|
|
19
|
+
* Also, if you're not using interactive style of dismissing the keyboard
|
|
20
|
+
* (or if you don't have an input inside this view) it doesn't make sense to track it anyway.
|
|
21
|
+
* (This is caused because of the usage of inputAccessory to be able to track the
|
|
22
|
+
* keyboard interactive change and it introduces this bug)
|
|
23
|
+
*/
|
|
24
|
+
trackInteractive?: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* iOS only.
|
|
27
|
+
* Show the keyboard on a negative scroll
|
|
28
|
+
* default: false
|
|
29
|
+
*/
|
|
30
|
+
revealKeyboardInteractive?: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* iOS only.
|
|
33
|
+
* Set to false to turn off inset management and manage it yourself
|
|
34
|
+
* default: true
|
|
35
|
+
*/
|
|
36
|
+
manageScrollView?: boolean;
|
|
37
|
+
/**
|
|
38
|
+
* iOS only.
|
|
39
|
+
* Set to true manageScrollView is set to true and still does not work,
|
|
40
|
+
* it means that the ScrollView found is the wrong one and you'll have
|
|
41
|
+
* to have the KeyboardAccessoryView and the ScrollView as siblings
|
|
42
|
+
* and set this to true
|
|
43
|
+
*
|
|
44
|
+
* default: false
|
|
45
|
+
*/
|
|
46
|
+
requiresSameParentToManageScrollView?: boolean;
|
|
47
|
+
/**
|
|
48
|
+
* iOS only.
|
|
49
|
+
* Allow hitting sub-views that are placed beyond the view bounds
|
|
50
|
+
*
|
|
51
|
+
* default: false
|
|
52
|
+
*/
|
|
53
|
+
allowHitsOutsideBounds?: boolean;
|
|
54
|
+
scrollToFocusedInput?: boolean;
|
|
55
|
+
/**
|
|
56
|
+
* iOS only.
|
|
57
|
+
* The scrolling behavior (NONE | SCROLL_TO_BOTTOM_INVERTED_ONLY | FIXED_OFFSET)
|
|
58
|
+
*/
|
|
59
|
+
scrollBehavior?: number;
|
|
60
|
+
/**
|
|
61
|
+
* iOS only.
|
|
62
|
+
* Add a SafeArea view beneath the KeyboardAccessoryView
|
|
63
|
+
* default: false
|
|
64
|
+
*/
|
|
65
|
+
addBottomView?: boolean;
|
|
66
|
+
/**
|
|
67
|
+
* iOS only.
|
|
68
|
+
* The bottom view's color
|
|
69
|
+
* default: 'white'
|
|
70
|
+
*/
|
|
71
|
+
bottomViewColor?: string;
|
|
72
|
+
/**
|
|
73
|
+
* Allow control safe area
|
|
74
|
+
*/
|
|
75
|
+
useSafeArea?: boolean;
|
|
76
|
+
/**
|
|
77
|
+
* Whether or not to include bottom tab bar inset
|
|
78
|
+
*/
|
|
79
|
+
usesBottomTabs?: boolean;
|
|
80
|
+
ref?: any;
|
|
81
|
+
style?: ViewStyle;
|
|
82
|
+
children?: React.ReactChild | React.ReactChild[];
|
|
83
|
+
};
|
|
43
84
|
|
|
44
85
|
const KeyboardTrackingView = forwardRef(({children, ...others}: KeyboardTrackingViewProps, ref: any) => {
|
|
45
86
|
const KeyboardTrackingViewContainer = isAndroid ? KeyboardTrackingViewAndroid : KeyboardTrackingViewIOS;
|
|
46
|
-
|
|
47
87
|
return (
|
|
48
88
|
<KeyboardTrackingViewContainer {...others} ref={ref}>
|
|
49
89
|
{children}
|
|
@@ -51,4 +91,6 @@ const KeyboardTrackingView = forwardRef(({children, ...others}: KeyboardTracking
|
|
|
51
91
|
);
|
|
52
92
|
});
|
|
53
93
|
|
|
54
|
-
export default KeyboardTrackingView;
|
|
94
|
+
export default KeyboardTrackingView as (typeof KeyboardTrackingView & {scrollBehaviors: typeof SCROLL_BEHAVIORS});
|
|
95
|
+
// @ts-expect-error
|
|
96
|
+
KeyboardTrackingView.scrollBehaviors = SCROLL_BEHAVIORS;
|
package/components/Keyboard/KeyboardTracking/KeyboardTrackingView/keyboardTrackingView.api.json
ADDED
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "KeyboardTrackingView",
|
|
3
|
+
"category": "keyboard",
|
|
4
|
+
"description": "A UI component that enables 'keyboard tracking' for this view and it's sub-views.\nWould typically be used when you have a TextField or TextInput inside this view.",
|
|
5
|
+
"note": "This view is useful only for iOS.",
|
|
6
|
+
"example": "https://github.com/wix/react-native-ui-lib/blob/master/demo/src/screens/nativeComponentScreens/KeyboardTrackingViewScreen.js",
|
|
7
|
+
"images": [
|
|
8
|
+
"https://github.com/wix/react-native-ui-lib/blob/master/demo/showcase/KeyboardTrackingView/KeyboardTrackingView.gif?raw=true"
|
|
9
|
+
],
|
|
10
|
+
"props": [
|
|
11
|
+
{
|
|
12
|
+
"name": "trackInteractive",
|
|
13
|
+
"type": "boolean",
|
|
14
|
+
"description": "Enables tracking of the keyboard when it's dismissed interactively (false by default).\nWhy? When using an external keyboard (BT),\nyou still get the keyboard events and the view just hovers when you focus the input.\nAlso, if you're not using interactive style of dismissing the keyboard\n(or if you don't have an input inside this view) it doesn't make sense to track it anyway.\n(This is caused because of the usage of inputAccessory to be able to track the keyboard interactive change and it introduces this bug)"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"name": "scrollToFocusedInput",
|
|
18
|
+
"type": "boolean",
|
|
19
|
+
"description": "Should the scrollView scroll to the focused input"
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"name": "scrollBehavior",
|
|
23
|
+
"type": "number",
|
|
24
|
+
"description": "The scrolling behavior (use KeyboardTrackingView.scrollBehaviors.NONE | SCROLL_TO_BOTTOM_INVERTED_ONLY | FIXED_OFFSET)",
|
|
25
|
+
"note": "iOS only"
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"name": "revealKeyboardInteractive",
|
|
29
|
+
"type": "boolean",
|
|
30
|
+
"description": "Show the keyboard on a negative scroll\niOS only.",
|
|
31
|
+
"note": "iOS only",
|
|
32
|
+
"default": "false"
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"name": "manageScrollView",
|
|
36
|
+
"type": "boolean",
|
|
37
|
+
"description": "Set to false to turn off inset management and manage it yourself\niOS only.",
|
|
38
|
+
"note": "iOS only",
|
|
39
|
+
"default": "true"
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"name": "requiresSameParentToManageScrollView",
|
|
43
|
+
"type": "boolean",
|
|
44
|
+
"description": "Set to true manageScrollView is set to true and still does not work,\nit means that the ScrollView found is the wrong one and you'll have\nto have the KeyboardAccessoryView and the ScrollView as siblings\nand set this to true\niOS only.",
|
|
45
|
+
"note": "iOS only",
|
|
46
|
+
"default": "false"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"name": "allowHitsOutsideBounds",
|
|
50
|
+
"type": "boolean",
|
|
51
|
+
"description": "Allow hitting sub-views that are placed beyond the view bounds\niOS only.",
|
|
52
|
+
"note": "iOS only",
|
|
53
|
+
"default": "false"
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"name": "addBottomView",
|
|
57
|
+
"type": "boolean",
|
|
58
|
+
"description": "Add a view beneath the KeyboardAccessoryView\niOS only.",
|
|
59
|
+
"note": "iOS only",
|
|
60
|
+
"default": "false"
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"name": "bottomViewColor",
|
|
64
|
+
"type": "string",
|
|
65
|
+
"description": "The bottom view's color\niOS only.",
|
|
66
|
+
"note": "iOS only",
|
|
67
|
+
"default": "white"
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
"name": "useSafeArea",
|
|
71
|
+
"type": "boolean",
|
|
72
|
+
"description": "Whether or not to handle SafeArea\niOS only.",
|
|
73
|
+
"note": "iOS only",
|
|
74
|
+
"default": "true"
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
"name": "usesBottomTabs",
|
|
78
|
+
"type": "boolean",
|
|
79
|
+
"description": "Whether or not to include bottom tab bar inset\niOS only.",
|
|
80
|
+
"note": "iOS only",
|
|
81
|
+
"default": "false"
|
|
82
|
+
},
|
|
83
|
+
{"name": "ref", "type": "any", "description": ""},
|
|
84
|
+
{"name": "style", "type": "ViewStyle", "description": ""}
|
|
85
|
+
],
|
|
86
|
+
"snippet": [
|
|
87
|
+
"<KeyboardTrackingView",
|
|
88
|
+
" style={$1}",
|
|
89
|
+
" trackInteractive",
|
|
90
|
+
" useSafeArea",
|
|
91
|
+
">",
|
|
92
|
+
" $2",
|
|
93
|
+
"</KeyboardTrackingView>"
|
|
94
|
+
]
|
|
95
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "KeyboardAwareInsetsView",
|
|
3
|
+
"category": "keyboard",
|
|
4
|
+
"description": "Used to add an inset when a keyboard is used and might hide part of the screen.",
|
|
5
|
+
"note": "This view is useful only for iOS.",
|
|
6
|
+
"extends": ["keyboard/KeyboardTrackingView"],
|
|
7
|
+
"example": "https://github.com/wix/react-native-ui-lib/blob/master/demo/src/screens/incubatorScreens/IncubatorTextFieldScreen.tsx",
|
|
8
|
+
"snippet": ["<ScrollView>",
|
|
9
|
+
" <TextField/>",
|
|
10
|
+
" <TextField/>",
|
|
11
|
+
" <KeyboardAwareInsetsView/>",
|
|
12
|
+
"<ScrollView>"
|
|
13
|
+
]
|
|
14
|
+
}
|
package/components/index.ts
CHANGED
|
@@ -2,7 +2,7 @@ import HighlighterOverlayView from './HighlighterOverlayView';
|
|
|
2
2
|
import SafeAreaSpacerView from './SafeArea/SafeAreaSpacerView';
|
|
3
3
|
import WheelPicker, {WheelPickerProps} from './WheelPicker';
|
|
4
4
|
import SafeAreaInsetsManager from './SafeArea/SafeAreaInsetsManager';
|
|
5
|
-
import Keyboard from './Keyboard';
|
|
5
|
+
import Keyboard, {KeyboardTrackingViewProps, KeyboardAccessoryViewProps} from './Keyboard';
|
|
6
6
|
|
|
7
7
|
export {
|
|
8
8
|
HighlighterOverlayView,
|
|
@@ -10,5 +10,7 @@ export {
|
|
|
10
10
|
WheelPicker,
|
|
11
11
|
WheelPickerProps,
|
|
12
12
|
SafeAreaInsetsManager,
|
|
13
|
-
Keyboard
|
|
13
|
+
Keyboard,
|
|
14
|
+
KeyboardTrackingViewProps,
|
|
15
|
+
KeyboardAccessoryViewProps
|
|
14
16
|
};
|
|
@@ -50,6 +50,7 @@ typedef NS_ENUM(NSUInteger, KeyboardTrackingScrollBehavior) {
|
|
|
50
50
|
@property (nonatomic) CGFloat originalHeight;
|
|
51
51
|
@property (nonatomic) KeyboardTrackingScrollBehavior scrollBehavior;
|
|
52
52
|
@property (nonatomic) BOOL addBottomView;
|
|
53
|
+
@property (nonatomic, strong) UIColor *bottomViewColor;
|
|
53
54
|
@property (nonatomic) BOOL useSafeArea;
|
|
54
55
|
@property (nonatomic) BOOL usesBottomTabs;
|
|
55
56
|
@property (nonatomic) BOOL scrollToFocusedInput;
|
|
@@ -82,6 +83,7 @@ typedef NS_ENUM(NSUInteger, KeyboardTrackingScrollBehavior) {
|
|
|
82
83
|
_bottomViewHeight = kBottomViewHeightTemp;
|
|
83
84
|
|
|
84
85
|
self.addBottomView = NO;
|
|
86
|
+
self.bottomViewColor = [UIColor whiteColor];
|
|
85
87
|
self.scrollToFocusedInput = NO;
|
|
86
88
|
self.usesBottomTabs = NO;
|
|
87
89
|
|
|
@@ -443,15 +445,26 @@ typedef NS_ENUM(NSUInteger, KeyboardTrackingScrollBehavior) {
|
|
|
443
445
|
-(void)setAddBottomView:(BOOL)addBottomView
|
|
444
446
|
{
|
|
445
447
|
_addBottomView = addBottomView;
|
|
448
|
+
|
|
446
449
|
[self addBottomViewIfNecessary];
|
|
447
450
|
}
|
|
448
451
|
|
|
452
|
+
-(void)setBottomViewColor:(UIColor *)bottomViewColor
|
|
453
|
+
{
|
|
454
|
+
_bottomViewColor = bottomViewColor;
|
|
455
|
+
|
|
456
|
+
if (self.addBottomView && _bottomView != nil) {
|
|
457
|
+
_bottomView.backgroundColor = _bottomViewColor;
|
|
458
|
+
}
|
|
459
|
+
}
|
|
460
|
+
|
|
449
461
|
-(void)addBottomViewIfNecessary
|
|
450
462
|
{
|
|
451
463
|
if (self.addBottomView && _bottomView == nil)
|
|
452
464
|
{
|
|
453
465
|
_bottomView = [UIView new];
|
|
454
|
-
_bottomView.backgroundColor =
|
|
466
|
+
_bottomView.backgroundColor = self.bottomViewColor;
|
|
467
|
+
|
|
455
468
|
[self addSubview:_bottomView];
|
|
456
469
|
[self updateBottomViewFrame];
|
|
457
470
|
}
|
|
@@ -505,30 +518,11 @@ typedef NS_ENUM(NSUInteger, KeyboardTrackingScrollBehavior) {
|
|
|
505
518
|
});
|
|
506
519
|
}
|
|
507
520
|
|
|
508
|
-
#pragma mark - root view controller and presenting style
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
- (BOOL)isModal {
|
|
512
|
-
UIWindow *window = UIApplication.sharedApplication.windows.firstObject;
|
|
513
|
-
UIViewController *presentedViewController = window.rootViewController.presentedViewController;
|
|
514
|
-
|
|
515
|
-
if (presentedViewController != nil) {
|
|
516
|
-
if ([presentedViewController isKindOfClass:[UINavigationController class]]) {
|
|
517
|
-
UINavigationController *presented = (UINavigationController*)presentedViewController;
|
|
518
|
-
if (presented.visibleViewController) {
|
|
519
|
-
return YES;
|
|
520
|
-
}
|
|
521
|
-
}
|
|
522
|
-
}
|
|
523
|
-
return NO;
|
|
524
|
-
}
|
|
525
|
-
|
|
526
521
|
#pragma mark - TabBarController
|
|
527
522
|
|
|
528
523
|
-(CGFloat)getTabBarHeight
|
|
529
524
|
{
|
|
530
525
|
if (@available(iOS 11.0, *)) {
|
|
531
|
-
NSLog(@"INBAL usesBottomTabs: %d", self.usesBottomTabs);
|
|
532
526
|
if (self.usesBottomTabs == YES)
|
|
533
527
|
{
|
|
534
528
|
UITabBarController *tabBarController = [UITabBarController new];
|
|
@@ -672,6 +666,7 @@ RCT_REMAP_VIEW_PROPERTY(revealKeyboardInteractive, revealKeyboardInteractive, BO
|
|
|
672
666
|
RCT_REMAP_VIEW_PROPERTY(manageScrollView, manageScrollView, BOOL)
|
|
673
667
|
RCT_REMAP_VIEW_PROPERTY(requiresSameParentToManageScrollView, requiresSameParentToManageScrollView, BOOL)
|
|
674
668
|
RCT_REMAP_VIEW_PROPERTY(addBottomView, addBottomView, BOOL)
|
|
669
|
+
RCT_REMAP_VIEW_PROPERTY(bottomViewColor, bottomViewColor, UIColor)
|
|
675
670
|
RCT_REMAP_VIEW_PROPERTY(useSafeArea, useSafeArea, BOOL)
|
|
676
671
|
RCT_REMAP_VIEW_PROPERTY(usesBottomTabs, usesBottomTabs, BOOL)
|
|
677
672
|
RCT_REMAP_VIEW_PROPERTY(scrollToFocusedInput, scrollToFocusedInput, BOOL)
|
|
Binary file
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
3
|
+
<plist version="1.0">
|
|
4
|
+
<dict>
|
|
5
|
+
<key>SchemeUserState</key>
|
|
6
|
+
<dict>
|
|
7
|
+
<key>reactnativeuilib.xcscheme_^#shared#^_</key>
|
|
8
|
+
<dict>
|
|
9
|
+
<key>orderHint</key>
|
|
10
|
+
<integer>0</integer>
|
|
11
|
+
</dict>
|
|
12
|
+
</dict>
|
|
13
|
+
</dict>
|
|
14
|
+
</plist>
|
package/package.json
CHANGED
package/android/build/.transforms/7b85a4cb719e06b1cadba5128a161508/transformed/classes/classes.dex
DELETED
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
o/classes
|