react-native-ui-lib 7.46.3-snapshot.7360 → 7.46.3-snapshot.7367
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/babel.config.js +0 -12
- package/index.js +0 -1
- package/lib/android/build.gradle +5 -5
- package/lib/android/src/main/java/com/wix/reactnativeuilib/UiLibPackageList.java +2 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/highlighterview/HighlighterViewManager.java +23 -31
- package/lib/android/src/main/java/com/wix/reactnativeuilib/highlighterview/ReactHacks.java +30 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/highlighterview/ReflectionUtils.java +34 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/utils/RuntimeUtils.java +1 -1
- package/lib/android/src/main/java/com/wix/reactnativeuilib/textinput/DefaultKeyListener.java +33 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/textinput/KeyListenerProxy.java +53 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/textinput/TextInputDelKeyHandlerModule.java +54 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/textinput/TextInputDelKeyHandlerPackage.java +28 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/textinput/ViewUtils.java +36 -0
- package/lib/components/{HighlighterOverlayView/index.d.ts → HighlighterOverlayView.d.ts} +1 -1
- package/lib/components/HighlighterOverlayView.js +40 -0
- package/lib/components/{HighlighterOverlayView/index.web.d.ts → HighlighterOverlayView.web.d.ts} +1 -1
- package/lib/components/Keyboard/{KeyboardAccessoryView → KeyboardInput}/CustomKeyboardView/CustomKeyboardView.android.d.ts +2 -5
- package/lib/components/Keyboard/KeyboardInput/CustomKeyboardView/CustomKeyboardView.android.js +28 -0
- package/lib/components/Keyboard/{KeyboardAccessoryView → KeyboardInput}/CustomKeyboardView/CustomKeyboardView.ios.d.ts +1 -1
- package/lib/components/Keyboard/{KeyboardAccessoryView → KeyboardInput}/CustomKeyboardView/CustomKeyboardView.ios.js +3 -3
- package/lib/components/Keyboard/{KeyboardAccessoryView/CustomKeyboardView → KeyboardInput}/CustomKeyboardViewBase.d.ts +0 -3
- package/lib/components/Keyboard/{KeyboardAccessoryView/CustomKeyboardView → KeyboardInput}/CustomKeyboardViewBase.js +1 -1
- package/lib/components/Keyboard/{KeyboardAccessoryView/index.d.ts → KeyboardInput/KeyboardAccessoryView.d.ts} +1 -11
- package/lib/components/Keyboard/{KeyboardAccessoryView/index.js → KeyboardInput/KeyboardAccessoryView.js} +5 -31
- package/lib/components/Keyboard/{KeyboardAccessoryView/KeyboardRegistry/index.d.ts → KeyboardInput/KeyboardRegistry.d.ts} +1 -1
- package/lib/components/Keyboard/{KeyboardAccessoryView/KeyboardRegistry/index.js → KeyboardInput/KeyboardRegistry.js} +1 -1
- package/lib/components/Keyboard/{KeyboardAccessoryView/KeyboardRegistry → KeyboardInput}/__tests__/KeyboardRegistry.spec.js +1 -1
- package/lib/components/Keyboard/{KeyboardAccessoryView → KeyboardInput}/keyboardAccessoryView.api.json +5 -5
- package/lib/components/Keyboard/{KeyboardAccessoryView/KeyboardRegistry → KeyboardInput}/keyboardRegistry.api.json +9 -9
- package/lib/components/Keyboard/KeyboardInput/utils/KeyboardUtils.d.ts +11 -0
- package/lib/components/Keyboard/KeyboardInput/utils/KeyboardUtils.js +17 -0
- package/lib/components/Keyboard/{KeyboardAccessoryView/KeyboardRegistry/EventEmitterManager → KeyboardInput/utils}/__tests__/EventEmitterManager.spec.js +1 -1
- package/lib/components/Keyboard/{KeyboardAwareInsetsView/index.d.ts → KeyboardTracking/KeyboardAwareInsetsView.d.ts} +1 -1
- package/lib/components/Keyboard/{KeyboardAwareInsetsView/index.js → KeyboardTracking/KeyboardAwareInsetsView.js} +1 -1
- package/lib/components/Keyboard/{KeyboardTrackingView → KeyboardTracking/KeyboardTrackingView}/KeyboardTrackingView.ios.d.ts +4 -1
- package/lib/components/Keyboard/{KeyboardTrackingView → KeyboardTracking/KeyboardTrackingView}/KeyboardTrackingView.ios.js +8 -5
- package/lib/components/Keyboard/{KeyboardTrackingView → KeyboardTracking/KeyboardTrackingView}/index.d.ts +2 -2
- package/lib/components/Keyboard/{KeyboardTrackingView → KeyboardTracking/KeyboardTrackingView}/keyboardTrackingView.api.json +20 -11
- package/lib/components/Keyboard/index.d.ts +6 -6
- package/lib/components/Keyboard/index.js +6 -6
- package/lib/components/SafeArea/SafeAreaInsetsManager.d.ts +7 -21
- package/lib/components/SafeArea/SafeAreaInsetsManager.js +31 -95
- package/lib/components/SafeArea/SafeAreaSpacerView.d.ts +2 -2
- package/lib/components/SafeArea/SafeAreaSpacerView.js +9 -63
- package/lib/components/index.d.ts +1 -1
- package/lib/components/index.js +1 -1
- package/lib/ios/reactnativeuilib/keyboardinput/rctcustomInputcontroller/RCTCustomInputControllerTemp.m +8 -52
- package/lib/ios/reactnativeuilib/keyboardinput/rctcustomInputcontroller/RCTCustomKeyboardViewControllerTemp.h +7 -1
- package/lib/ios/reactnativeuilib/keyboardinput/rctcustomInputcontroller/RCTCustomKeyboardViewControllerTemp.m +1 -1
- package/lib/ios/reactnativeuilib/keyboardtrackingview/KeyboardTrackingViewTempManager.m +41 -109
- package/lib/package.json +3 -3
- package/lib/react-native.config.js +3 -1
- package/metro.config.js +2 -2
- package/package.json +29 -29
- package/panningViews.d.ts +2 -0
- package/panningViews.js +1 -0
- package/react-native.config.js +3 -1
- package/sharedTransition.d.ts +2 -0
- package/sharedTransition.js +1 -0
- package/src/commons/Constants.js +5 -2
- package/src/components/KeyboardAwareScrollView/KeyboardAwareBase.js +1 -5
- package/src/components/actionSheet/index.d.ts +12 -2
- package/src/components/actionSheet/index.js +42 -3
- package/src/components/animatedImage/index.js +6 -16
- package/src/components/badge/index.d.ts +47 -107
- package/src/components/button/button.api.json +1 -1
- package/src/components/button/index.d.ts +23 -53
- package/src/components/button/types.d.ts +1 -0
- package/src/components/colorPicker/ColorPickerDialog.d.ts +1 -1
- package/src/components/colorPicker/ColorPickerDialog.js +1 -1
- package/src/components/dateTimePicker/index.d.ts +5 -186
- package/src/components/dateTimePicker/index.js +4 -3
- package/src/components/dialog/DialogDismissibleView.d.ts +34 -0
- package/src/components/dialog/DialogDismissibleView.js +184 -0
- package/src/components/dialog/OverlayFadingBackground.d.ts +14 -0
- package/src/components/dialog/OverlayFadingBackground.js +45 -0
- package/src/components/dialog/dialog.api.json +37 -31
- package/src/components/dialog/index.d.ts +105 -13
- package/src/components/dialog/index.js +212 -204
- package/src/components/drawer/Swipeable.js +2 -1
- package/src/components/drawer/index.js +25 -31
- package/src/components/fadedScrollView/index.js +2 -7
- package/src/components/featureHighlight/index.d.ts +1 -1
- package/src/components/index.js +19 -0
- package/src/components/marquee/types.js +1 -4
- package/src/components/modal/index.d.ts +0 -5
- package/src/components/modal/index.js +10 -14
- package/src/components/modal/modal.api.json +0 -5
- package/src/components/panningViews/asPanViewConsumer.d.ts +3 -0
- package/src/components/panningViews/asPanViewConsumer.js +16 -0
- package/src/components/panningViews/panDismissibleView.d.ts +51 -0
- package/src/components/panningViews/panDismissibleView.js +350 -0
- package/src/components/panningViews/panGestureView.d.ts +23 -0
- package/src/components/panningViews/panGestureView.js +156 -0
- package/src/components/panningViews/panListenerView.d.ts +66 -0
- package/src/components/panningViews/panListenerView.js +155 -0
- package/src/components/panningViews/panResponderView.d.ts +19 -0
- package/src/components/panningViews/panResponderView.js +79 -0
- package/src/components/panningViews/panningContext.d.ts +3 -0
- package/src/components/panningViews/panningContext.js +4 -0
- package/src/components/panningViews/panningProvider.d.ts +73 -0
- package/src/components/panningViews/panningProvider.js +101 -0
- package/src/components/picker/Picker.driver.new.d.ts +2 -2
- package/src/components/picker/Picker.driver.new.js +3 -3
- package/src/components/picker/PickerItem.js +20 -6
- package/src/components/picker/PickerPresenter.d.ts +1 -0
- package/src/components/picker/PickerPresenter.js +23 -1
- package/src/components/picker/api/picker.api.json +1 -0
- package/src/components/picker/api/pickerItem.api.json +5 -0
- package/src/components/picker/helpers/useFieldType.d.ts +23 -53
- package/src/components/picker/helpers/usePickerLabel.d.ts +1 -1
- package/src/components/picker/helpers/usePickerLabel.js +3 -2
- package/src/components/picker/helpers/usePickerMigrationWarnings.d.ts +1 -1
- package/src/components/picker/helpers/usePickerMigrationWarnings.js +12 -0
- package/src/components/picker/helpers/usePickerSearch.d.ts +1 -1
- package/src/components/picker/helpers/usePickerSearch.js +8 -4
- package/src/components/picker/helpers/usePickerSelection.d.ts +1 -1
- package/src/components/picker/helpers/usePickerSelection.js +10 -2
- package/src/components/picker/index.js +22 -4
- package/src/components/picker/types.d.ts +24 -1
- package/src/components/segmentedControl/index.js +3 -3
- package/src/components/sharedTransition/ShareTransitionContext.js +3 -0
- package/src/components/sharedTransition/SharedArea.js +153 -0
- package/src/components/sharedTransition/SourceElement.js +44 -0
- package/src/components/sharedTransition/TargetElement.js +38 -0
- package/src/components/sharedTransition/index.js +9 -0
- package/src/components/slider/GradientSlider.d.ts +1 -1
- package/src/components/sortableGridList/SortableItem.js +4 -13
- package/src/components/sortableList/SortableListItem.js +4 -13
- package/src/components/stackAggregator/index.js +11 -16
- package/src/components/text/Text.driver.new.d.ts +2 -2
- package/src/components/text/Text.driver.new.js +2 -2
- package/src/components/textField/Input.js +1 -0
- package/src/components/textField/TextField.driver.new.d.ts +2 -2
- package/src/components/textField/TextField.driver.new.js +2 -2
- package/src/components/textField/presets/outline.d.ts +46 -106
- package/src/components/textField/presets/underline.d.ts +46 -106
- package/src/components/textField/types.js +0 -1
- package/src/components/textField/usePreset.d.ts +44 -72
- package/src/components/timeline/types.js +0 -3
- package/src/incubator/dialog/dialog.api.json +54 -0
- package/src/{components → incubator}/dialog/dialogHeader.api.json +2 -2
- package/src/incubator/dialog/index.d.ts +15 -0
- package/src/incubator/dialog/index.js +218 -0
- package/src/{components → incubator}/dialog/types.d.ts +19 -0
- package/src/{components → incubator}/dialog/types.js +3 -1
- package/src/{components → incubator}/dialog/useDialogContent.d.ts +1 -1
- package/src/incubator/expandableOverlay/ExpandableOverlay.driver.js +1 -1
- package/src/incubator/expandableOverlay/index.d.ts +3 -42
- package/src/incubator/expandableOverlay/index.js +4 -1
- package/src/{hooks/useHiddenLocation/index.d.ts → incubator/hooks/useHiddenLocation.d.ts} +1 -1
- package/src/{hooks/useHiddenLocation/index.web.d.ts → incubator/hooks/useHiddenLocation.web.d.ts} +1 -1
- package/src/incubator/index.d.ts +2 -0
- package/src/incubator/index.js +2 -0
- package/src/{components → incubator}/panView/index.d.ts +3 -3
- package/src/{components → incubator}/panView/index.js +4 -4
- package/src/{components → incubator}/panView/usePanGesture.d.ts +1 -1
- package/src/incubator/toast/index.js +1 -1
- package/src/index.d.ts +10 -3
- package/src/index.js +162 -42
- package/src/testkit/index.d.ts +1 -1
- package/src/testkit/index.js +1 -1
- package/src/testkit/new/Component.driver.d.ts +1 -4
- package/src/testkit/new/Component.driver.js +3 -3
- package/lib/components/HighlighterOverlayView/index.js +0 -49
- package/lib/components/Keyboard/KeyboardAccessoryView/CustomKeyboardView/CustomKeyboardView.android.js +0 -51
- package/lib/components/Keyboard/KeyboardAccessoryView/KeyboardUtils/index.d.ts +0 -26
- package/lib/components/Keyboard/KeyboardAccessoryView/KeyboardUtils/index.js +0 -91
- package/lib/components/SafeArea/__tests__/SafeAreaInsetsManager.spec.js +0 -274
- package/lib/components/SafeArea/index.d.ts +0 -10
- package/lib/components/SafeArea/index.js +0 -11
- package/panView.d.ts +0 -2
- package/panView.js +0 -1
- /package/lib/components/{HighlighterOverlayView/index.web.js → HighlighterOverlayView.web.js} +0 -0
- /package/lib/components/Keyboard/{KeyboardAccessoryView → KeyboardInput}/CustomKeyboardView/index.d.ts +0 -0
- /package/lib/components/Keyboard/{KeyboardAccessoryView → KeyboardInput}/CustomKeyboardView/index.js +0 -0
- /package/lib/components/Keyboard/{KeyboardAccessoryView → KeyboardInput}/CustomKeyboardView/index.web.d.ts +0 -0
- /package/lib/components/Keyboard/{KeyboardAccessoryView → KeyboardInput}/CustomKeyboardView/index.web.js +0 -0
- /package/lib/components/Keyboard/{KeyboardAccessoryView → KeyboardInput}/TextInputKeyboardManager/TextInputKeyboardManager.android.d.ts +0 -0
- /package/lib/components/Keyboard/{KeyboardAccessoryView → KeyboardInput}/TextInputKeyboardManager/TextInputKeyboardManager.android.js +0 -0
- /package/lib/components/Keyboard/{KeyboardAccessoryView → KeyboardInput}/TextInputKeyboardManager/TextInputKeyboardManager.ios.d.ts +0 -0
- /package/lib/components/Keyboard/{KeyboardAccessoryView → KeyboardInput}/TextInputKeyboardManager/TextInputKeyboardManager.ios.js +0 -0
- /package/lib/components/Keyboard/{KeyboardAccessoryView → KeyboardInput}/TextInputKeyboardManager/index.d.ts +0 -0
- /package/lib/components/Keyboard/{KeyboardAccessoryView → KeyboardInput}/TextInputKeyboardManager/index.js +0 -0
- /package/lib/components/Keyboard/{KeyboardAccessoryView/KeyboardRegistry/EventEmitterManager/index.d.ts → KeyboardInput/utils/EventEmitterManager.d.ts} +0 -0
- /package/lib/components/Keyboard/{KeyboardAccessoryView/KeyboardRegistry/EventEmitterManager/index.js → KeyboardInput/utils/EventEmitterManager.js} +0 -0
- /package/lib/components/Keyboard/{KeyboardTrackingView → KeyboardTracking/KeyboardTrackingView}/KeyboardTrackingView.android.d.ts +0 -0
- /package/lib/components/Keyboard/{KeyboardTrackingView → KeyboardTracking/KeyboardTrackingView}/KeyboardTrackingView.android.js +0 -0
- /package/lib/components/Keyboard/{KeyboardTrackingView → KeyboardTracking/KeyboardTrackingView}/index.js +0 -0
- /package/lib/components/Keyboard/{KeyboardTrackingView → KeyboardTracking/KeyboardTrackingView}/index.web.d.ts +0 -0
- /package/lib/components/Keyboard/{KeyboardTrackingView → KeyboardTracking/KeyboardTrackingView}/index.web.js +0 -0
- /package/lib/components/Keyboard/{KeyboardAwareInsetsView → KeyboardTracking}/keyboardAwareInsetsView.api.json +0 -0
- /package/src/{components → incubator}/dialog/Dialog.driver.new.d.ts +0 -0
- /package/src/{components → incubator}/dialog/Dialog.driver.new.js +0 -0
- /package/src/{components → incubator}/dialog/DialogHeader.d.ts +0 -0
- /package/src/{components → incubator}/dialog/DialogHeader.js +0 -0
- /package/src/{components → incubator}/dialog/useDialogContent.js +0 -0
- /package/src/{hooks/useHiddenLocation/index.js → incubator/hooks/useHiddenLocation.js} +0 -0
- /package/src/{hooks/useHiddenLocation/index.web.js → incubator/hooks/useHiddenLocation.web.js} +0 -0
- /package/src/{components → incubator}/panView/panningUtil.d.ts +0 -0
- /package/src/{components → incubator}/panView/panningUtil.js +0 -0
- /package/src/{components → incubator}/panView/usePanGesture.js +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { ViewStyle
|
|
2
|
+
import { ViewStyle } from 'react-native';
|
|
3
3
|
export type SafeAreaSpacerViewProps = {
|
|
4
|
-
style?:
|
|
4
|
+
style?: ViewStyle;
|
|
5
5
|
};
|
|
6
6
|
declare const SafeAreaSpacerView: {
|
|
7
7
|
({ style }: SafeAreaSpacerViewProps): React.JSX.Element;
|
|
@@ -1,68 +1,14 @@
|
|
|
1
|
-
import React
|
|
2
|
-
import { View,
|
|
3
|
-
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { View, requireNativeComponent, Platform } from 'react-native';
|
|
3
|
+
const NativeSafeAreaSpacerView = requireNativeComponent('SafeAreaSpacerView');
|
|
4
|
+
const isIOS = Platform.OS === 'ios';
|
|
4
5
|
const SafeAreaSpacerView = ({
|
|
5
6
|
style
|
|
6
7
|
}) => {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
right: 0
|
|
12
|
-
});
|
|
13
|
-
const [componentHeight, setComponentHeight] = useState(0);
|
|
14
|
-
const [spacerHeight, setSpacerHeight] = useState(0);
|
|
15
|
-
useEffect(() => {
|
|
16
|
-
const getSafeAreaInsets = async () => {
|
|
17
|
-
try {
|
|
18
|
-
const insets = await SafeAreaInsetsManager.getSafeAreaInsets();
|
|
19
|
-
if (insets) {
|
|
20
|
-
setSafeAreaInsets(insets);
|
|
21
|
-
}
|
|
22
|
-
} catch (error) {
|
|
23
|
-
console.warn('SafeAreaSpacerView: Failed to get initial safe area insets:', error);
|
|
24
|
-
}
|
|
25
|
-
};
|
|
26
|
-
getSafeAreaInsets();
|
|
27
|
-
|
|
28
|
-
// Add delegate to listen for safe area changes from native component
|
|
29
|
-
const delegate = {
|
|
30
|
-
onSafeAreaInsetsDidChangeEvent: insets => {
|
|
31
|
-
if (insets) {
|
|
32
|
-
setSafeAreaInsets(insets);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
};
|
|
36
|
-
SafeAreaInsetsManager.addSafeAreaChangedDelegate(delegate);
|
|
37
|
-
return () => {
|
|
38
|
-
SafeAreaInsetsManager.removeSafeAreaChangedDelegate(delegate);
|
|
39
|
-
};
|
|
40
|
-
}, []);
|
|
41
|
-
|
|
42
|
-
// Position detection with useCallback
|
|
43
|
-
const handleLayout = useCallback(event => {
|
|
44
|
-
const {
|
|
45
|
-
y
|
|
46
|
-
} = event.nativeEvent.layout;
|
|
47
|
-
setComponentHeight(y);
|
|
48
|
-
}, []);
|
|
49
|
-
useEffect(() => {
|
|
50
|
-
const screenHeight = Dimensions.get('window').height;
|
|
51
|
-
let height = 0;
|
|
52
|
-
// Check if positioned within safe area bounds
|
|
53
|
-
if (componentHeight < safeAreaInsets.top) {
|
|
54
|
-
height = safeAreaInsets.top;
|
|
55
|
-
} else if (componentHeight > screenHeight - safeAreaInsets.bottom) {
|
|
56
|
-
height = safeAreaInsets.bottom;
|
|
57
|
-
}
|
|
58
|
-
if (height !== spacerHeight) {
|
|
59
|
-
setSpacerHeight(height);
|
|
60
|
-
}
|
|
61
|
-
}, [componentHeight, safeAreaInsets, spacerHeight]);
|
|
62
|
-
const spacerStyle = useMemo(() => [{
|
|
63
|
-
height: spacerHeight
|
|
64
|
-
}, style], [spacerHeight, style]);
|
|
65
|
-
return <View style={spacerStyle} onLayout={handleLayout} />;
|
|
8
|
+
return (
|
|
9
|
+
// @ts-ignore
|
|
10
|
+
isIOS ? <NativeSafeAreaSpacerView style={style} /> : <View style={style} />
|
|
11
|
+
);
|
|
66
12
|
};
|
|
67
|
-
SafeAreaSpacerView.displayName = '
|
|
13
|
+
SafeAreaSpacerView.displayName = 'IGNORE';
|
|
68
14
|
export default SafeAreaSpacerView;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import DynamicFonts, { FontExtension } from './DynamicFonts';
|
|
2
2
|
import HighlighterOverlayView from './HighlighterOverlayView';
|
|
3
|
-
import SafeAreaSpacerView from './SafeArea';
|
|
3
|
+
import SafeAreaSpacerView from './SafeArea/SafeAreaSpacerView';
|
|
4
4
|
import SafeAreaInsetsManager from './SafeArea/SafeAreaInsetsManager';
|
|
5
5
|
import Keyboard, { KeyboardTrackingViewProps, KeyboardAccessoryViewProps } from './Keyboard';
|
|
6
6
|
export { DynamicFonts, FontExtension, HighlighterOverlayView, SafeAreaSpacerView, SafeAreaInsetsManager, Keyboard, KeyboardTrackingViewProps, KeyboardAccessoryViewProps };
|
package/lib/components/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import DynamicFonts, { FontExtension } from "./DynamicFonts";
|
|
2
2
|
import HighlighterOverlayView from "./HighlighterOverlayView";
|
|
3
|
-
import SafeAreaSpacerView from "./SafeArea";
|
|
3
|
+
import SafeAreaSpacerView from "./SafeArea/SafeAreaSpacerView";
|
|
4
4
|
import SafeAreaInsetsManager from "./SafeArea/SafeAreaInsetsManager";
|
|
5
5
|
import Keyboard, { KeyboardTrackingViewProps, KeyboardAccessoryViewProps } from "./Keyboard";
|
|
6
6
|
export { DynamicFonts, FontExtension, HighlighterOverlayView, SafeAreaSpacerView, SafeAreaInsetsManager, Keyboard, KeyboardTrackingViewProps, KeyboardAccessoryViewProps };
|
|
@@ -13,8 +13,6 @@
|
|
|
13
13
|
|
|
14
14
|
#import "LNAnimatorTemp.h"
|
|
15
15
|
|
|
16
|
-
#import "RNNAppDelegate.h"
|
|
17
|
-
|
|
18
16
|
#define kHlperViewTag 0x1f1f1f
|
|
19
17
|
|
|
20
18
|
NSString *const RCTCustomInputControllerKeyboardResigendEventTemp = @"kbdResigned";
|
|
@@ -51,6 +49,7 @@ NSString *const RCTCustomInputControllerKeyboardResigendEventTemp = @"kbdResigne
|
|
|
51
49
|
{
|
|
52
50
|
[self.delegate _WXInputHelperViewResignFirstResponder:self];
|
|
53
51
|
}
|
|
52
|
+
|
|
54
53
|
}
|
|
55
54
|
|
|
56
55
|
return rv;
|
|
@@ -119,36 +118,17 @@ RCT_EXPORT_MODULE(CustomInputControllerTemp)
|
|
|
119
118
|
return [params[@"useSafeArea"] isEqual:@(1)];
|
|
120
119
|
}
|
|
121
120
|
|
|
122
|
-
- (UITextField*)getTextFieldFromTextInputComponentView:(id)inputField {
|
|
123
|
-
UITextField *textField = nil;
|
|
124
|
-
|
|
125
|
-
if ([inputField isKindOfClass:NSClassFromString(@"RCTTextInputComponentView")])
|
|
126
|
-
{
|
|
127
|
-
Ivar textFieldIvar = class_getInstanceVariable([inputField class], "_backedTextInputView");
|
|
128
|
-
if (textFieldIvar != NULL)
|
|
129
|
-
{
|
|
130
|
-
textField = [inputField valueForKey:@"_backedTextInputView"];
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
return textField;
|
|
135
|
-
}
|
|
136
|
-
|
|
137
121
|
RCT_EXPORT_METHOD(presentCustomInputComponent:(nonnull NSNumber*)inputFieldTag params:(nonnull NSDictionary*)params)
|
|
138
122
|
{
|
|
139
123
|
RCTBridge* bridge = [self.bridge valueForKey:@"parentBridge"];
|
|
140
124
|
if(bridge == nil)
|
|
141
125
|
{
|
|
142
|
-
|
|
126
|
+
return;
|
|
143
127
|
}
|
|
144
128
|
|
|
145
129
|
UIView* inputField = [self.bridge.uiManager viewForReactTag:inputFieldTag];
|
|
146
130
|
NSDictionary *initialProps = params[@"initialProps"];
|
|
147
|
-
|
|
148
|
-
RNNAppDelegate* appDelegate = (RNNAppDelegate*)[UIApplication sharedApplication].delegate;
|
|
149
|
-
UIView *rv = [appDelegate.rootViewFactory viewWithModuleName:params[@"component"]
|
|
150
|
-
initialProperties:initialProps];
|
|
151
|
-
|
|
131
|
+
RCTRootView* rv = [[RCTRootView alloc] initWithBridge:bridge moduleName:params[@"component"] initialProperties:initialProps];
|
|
152
132
|
if(initialProps != nil && initialProps[@"backgroundColor"] != nil)
|
|
153
133
|
{
|
|
154
134
|
UIColor *backgroundColor = [RCTConvert UIColor:initialProps[@"backgroundColor"]];
|
|
@@ -168,17 +148,7 @@ RCT_EXPORT_METHOD(presentCustomInputComponent:(nonnull NSNumber*)inputFieldTag p
|
|
|
168
148
|
helperView.tag = kHlperViewTag;
|
|
169
149
|
helperView.delegate = self;
|
|
170
150
|
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
if ([inputField isKindOfClass:NSClassFromString(@"RCTTextInputComponentView")])
|
|
174
|
-
{
|
|
175
|
-
UITextField *textField = [self getTextFieldFromTextInputComponentView:inputField];
|
|
176
|
-
if (textField != nil)
|
|
177
|
-
{
|
|
178
|
-
helperView.inputAccessoryView = textField.inputAccessoryView;
|
|
179
|
-
}
|
|
180
|
-
}
|
|
181
|
-
else if ([inputField isKindOfClass:NSClassFromString(@"RCTTextView")])
|
|
151
|
+
if ([inputField isKindOfClass:NSClassFromString(@"RCTTextView")])
|
|
182
152
|
{
|
|
183
153
|
UITextView *textView = nil;
|
|
184
154
|
Ivar backedTextInputIvar = class_getInstanceVariable([inputField class], "_backedTextInput");
|
|
@@ -243,17 +213,7 @@ RCT_EXPORT_METHOD(resetInput:(nonnull NSNumber*)inputFieldTag)
|
|
|
243
213
|
_WXInputHelperViewTemp* helperView = [inputField.superview viewWithTag:kHlperViewTag];
|
|
244
214
|
if(helperView != nil && [helperView isFirstResponder])
|
|
245
215
|
{//restore the first responder only if it was already the first responder to prevent the keyboard from opening again if not necessary
|
|
246
|
-
|
|
247
|
-
{
|
|
248
|
-
UITextField *textField = [self getTextFieldFromTextInputComponentView:inputField];
|
|
249
|
-
if (textField != nil)
|
|
250
|
-
{
|
|
251
|
-
[textField reactFocus];
|
|
252
|
-
}
|
|
253
|
-
|
|
254
|
-
} else {
|
|
255
|
-
[inputField reactFocus];
|
|
256
|
-
}
|
|
216
|
+
[inputField reactFocus];
|
|
257
217
|
}
|
|
258
218
|
}
|
|
259
219
|
}
|
|
@@ -291,7 +251,7 @@ RCT_EXPORT_METHOD(dismissKeyboard)
|
|
|
291
251
|
}
|
|
292
252
|
}
|
|
293
253
|
|
|
294
|
-
-(UIColor*)reactViewAvgColor:(
|
|
254
|
+
-(UIColor*)reactViewAvgColor:(RCTRootView*)rootView
|
|
295
255
|
{
|
|
296
256
|
if (rootView.frame.size.width == 0 || rootView.frame.size.height == 0)
|
|
297
257
|
{
|
|
@@ -336,7 +296,7 @@ RCT_EXPORT_METHOD(expandFullScreenForInput:(nonnull NSNumber*)inputFieldTag)
|
|
|
336
296
|
helperView.keepInSuperviewOnResign = YES;
|
|
337
297
|
|
|
338
298
|
RCTCustomKeyboardViewControllerTemp *customKeyboardViewController = (RCTCustomKeyboardViewControllerTemp*)helperView.inputViewController;
|
|
339
|
-
|
|
299
|
+
RCTRootView *rv = customKeyboardViewController.rootView;
|
|
340
300
|
UIInputView *inputView = helperView.inputViewController.inputView;
|
|
341
301
|
|
|
342
302
|
_fullScreenWindow = [[UIWindow alloc] initWithFrame:[inputView.window convertRect:inputView.bounds fromView:inputView]];
|
|
@@ -410,7 +370,7 @@ RCT_EXPORT_METHOD(resetSizeForInput:(nonnull NSNumber*)inputFieldTag)
|
|
|
410
370
|
completionHandler:^(BOOL completed)
|
|
411
371
|
{
|
|
412
372
|
RCTCustomKeyboardViewControllerTemp *customKeyboardViewController = (RCTCustomKeyboardViewControllerTemp*)helperView.inputViewController;
|
|
413
|
-
|
|
373
|
+
RCTRootView *rv = (RCTRootView*)_fullScreenWindow.rootViewController.view;
|
|
414
374
|
|
|
415
375
|
[UIView performWithoutAnimation:^{
|
|
416
376
|
|
|
@@ -428,8 +388,6 @@ RCT_EXPORT_METHOD(resetSizeForInput:(nonnull NSNumber*)inputFieldTag)
|
|
|
428
388
|
}
|
|
429
389
|
}
|
|
430
390
|
|
|
431
|
-
|
|
432
|
-
|
|
433
391
|
#pragma mark - _WXInputHelperViewDelegateTemp methods
|
|
434
392
|
|
|
435
393
|
-(void)_WXInputHelperViewResignFirstResponder:(UIView*)wxInputHelperView
|
|
@@ -439,8 +397,6 @@ RCT_EXPORT_METHOD(resetSizeForInput:(nonnull NSNumber*)inputFieldTag)
|
|
|
439
397
|
[self sendEventWithName:RCTCustomInputControllerKeyboardResigendEventTemp body:nil];
|
|
440
398
|
}
|
|
441
399
|
self.customInputComponentPresented = NO;
|
|
442
|
-
|
|
443
|
-
|
|
444
400
|
}
|
|
445
401
|
|
|
446
402
|
@end
|
|
@@ -7,12 +7,18 @@
|
|
|
7
7
|
|
|
8
8
|
#import <UIKit/UIKit.h>
|
|
9
9
|
|
|
10
|
+
#if __has_include(<React/RCTRootView.h>)
|
|
11
|
+
#import <React/RCTRootView.h>
|
|
12
|
+
#else
|
|
13
|
+
#import "RCTRootView.h"
|
|
14
|
+
#endif
|
|
15
|
+
|
|
10
16
|
@interface RCTCustomKeyboardViewControllerTemp : UIInputViewController
|
|
11
17
|
|
|
12
18
|
- (void) setAllowsSelfSizing:(BOOL)allowsSelfSizing;
|
|
13
19
|
- (instancetype)initWithUsingSafeArea:(BOOL)useSafeArea;
|
|
14
20
|
|
|
15
21
|
@property (nonatomic, strong) NSLayoutConstraint *heightConstraint;
|
|
16
|
-
@property (nonatomic, strong)
|
|
22
|
+
@property (nonatomic, strong) RCTRootView *rootView;
|
|
17
23
|
|
|
18
24
|
@end
|
|
@@ -11,12 +11,11 @@
|
|
|
11
11
|
#import "UIResponder+FirstResponderTemp.h"
|
|
12
12
|
|
|
13
13
|
#import <WebKit/WebKit.h>
|
|
14
|
-
|
|
14
|
+
#import <React/RCTScrollView.h>
|
|
15
15
|
#import <React/RCTBridge.h>
|
|
16
16
|
#import <React/RCTUIManager.h>
|
|
17
17
|
#import <React/UIView+React.h>
|
|
18
18
|
#import <React/RCTUIManagerUtils.h>
|
|
19
|
-
#import <React/RCTSurfaceHostingView.h>
|
|
20
19
|
|
|
21
20
|
#import <objc/runtime.h>
|
|
22
21
|
|
|
@@ -71,7 +70,7 @@ typedef NS_ENUM(NSUInteger, KeyboardTrackingScrollBehavior) {
|
|
|
71
70
|
|
|
72
71
|
if (self)
|
|
73
72
|
{
|
|
74
|
-
[self addObserver:self forKeyPath:@"
|
|
73
|
+
[self addObserver:self forKeyPath:@"bounds" options:NSKeyValueObservingOptionInitial | NSKeyValueObservingOptionNew context:NULL];
|
|
75
74
|
_inputViewsMap = [NSMapTable weakToWeakObjectsMapTable];
|
|
76
75
|
_deferedInitializeAccessoryViewsCount = 0;
|
|
77
76
|
|
|
@@ -94,21 +93,20 @@ typedef NS_ENUM(NSUInteger, KeyboardTrackingScrollBehavior) {
|
|
|
94
93
|
return self;
|
|
95
94
|
}
|
|
96
95
|
|
|
97
|
-
-(
|
|
96
|
+
-(RCTRootView*)getRootView
|
|
98
97
|
{
|
|
99
98
|
UIView *view = self;
|
|
100
99
|
while (view.superview != nil)
|
|
101
100
|
{
|
|
102
101
|
view = view.superview;
|
|
103
|
-
if ([view isKindOfClass:[
|
|
102
|
+
if ([view isKindOfClass:[RCTRootView class]])
|
|
104
103
|
break;
|
|
105
|
-
}
|
|
106
104
|
}
|
|
107
105
|
|
|
108
|
-
if ([view isKindOfClass:[
|
|
109
|
-
|
|
106
|
+
if ([view isKindOfClass:[RCTRootView class]])
|
|
107
|
+
{
|
|
108
|
+
return (RCTRootView*)view;
|
|
110
109
|
}
|
|
111
|
-
|
|
112
110
|
return nil;
|
|
113
111
|
}
|
|
114
112
|
|
|
@@ -171,20 +169,10 @@ typedef NS_ENUM(NSUInteger, KeyboardTrackingScrollBehavior) {
|
|
|
171
169
|
[self updateBottomViewFrame];
|
|
172
170
|
}
|
|
173
171
|
|
|
174
|
-
- (UIScrollView*)extractUIScrollView:(UIView*)view
|
|
175
|
-
{
|
|
176
|
-
for (UIView* subview in view.subviews) {
|
|
177
|
-
if ([subview isKindOfClass:[UIScrollView class]]) {
|
|
178
|
-
return (UIScrollView*)subview;
|
|
179
|
-
}
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
return nil;
|
|
183
|
-
}
|
|
184
|
-
|
|
185
172
|
- (void)initializeAccessoryViewsAndHandleInsets
|
|
186
173
|
{
|
|
187
174
|
NSArray<UIView*>* allSubviews = [self getBreadthFirstSubviewsForView:[self getRootView]];
|
|
175
|
+
NSMutableArray<RCTScrollView*>* rctScrollViewsArray = [NSMutableArray array];
|
|
188
176
|
|
|
189
177
|
for (UIView* subview in allSubviews)
|
|
190
178
|
{
|
|
@@ -192,30 +180,27 @@ typedef NS_ENUM(NSUInteger, KeyboardTrackingScrollBehavior) {
|
|
|
192
180
|
{
|
|
193
181
|
if(_scrollViewToManage == nil)
|
|
194
182
|
{
|
|
195
|
-
if
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
}
|
|
208
|
-
|
|
209
|
-
if(_scrollViewToManage != nil)
|
|
210
|
-
{
|
|
211
|
-
_scrollIsInverted = CGAffineTransformEqualToTransform(subview.superview.transform, CGAffineTransformMakeScale(1, -1));
|
|
212
|
-
}
|
|
213
|
-
}
|
|
183
|
+
if(_requiresSameParentToManageScrollView && [subview isKindOfClass:[RCTScrollView class]] && subview.superview == self.superview)
|
|
184
|
+
{
|
|
185
|
+
_scrollViewToManage = ((RCTScrollView*)subview).scrollView;
|
|
186
|
+
}
|
|
187
|
+
else if(!_requiresSameParentToManageScrollView && [subview isKindOfClass:[UIScrollView class]])
|
|
188
|
+
{
|
|
189
|
+
_scrollViewToManage = (UIScrollView*)subview;
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
if(_scrollViewToManage != nil)
|
|
193
|
+
{
|
|
194
|
+
_scrollIsInverted = CGAffineTransformEqualToTransform(_scrollViewToManage.superview.transform, CGAffineTransformMakeScale(1, -1));
|
|
214
195
|
}
|
|
215
196
|
}
|
|
197
|
+
|
|
198
|
+
if([subview isKindOfClass:[RCTScrollView class]])
|
|
199
|
+
{
|
|
200
|
+
[rctScrollViewsArray addObject:(RCTScrollView*)subview];
|
|
201
|
+
}
|
|
216
202
|
}
|
|
217
203
|
|
|
218
|
-
|
|
219
204
|
if ([subview isKindOfClass:NSClassFromString(@"RCTTextField")])
|
|
220
205
|
{
|
|
221
206
|
UITextField *textField = nil;
|
|
@@ -238,30 +223,17 @@ typedef NS_ENUM(NSUInteger, KeyboardTrackingScrollBehavior) {
|
|
|
238
223
|
{
|
|
239
224
|
[self setupTextView:[subview valueForKey:@"_backedTextInputView"]];
|
|
240
225
|
}
|
|
241
|
-
else if ([subview isKindOfClass:NSClassFromString(@"RCTTextView")]
|
|
242
|
-
[subview isKindOfClass:NSClassFromString(@"RCTTextInputComponentView")])
|
|
226
|
+
else if ([subview isKindOfClass:NSClassFromString(@"RCTTextView")])
|
|
243
227
|
{
|
|
244
|
-
|
|
245
228
|
UITextView *textView = nil;
|
|
246
|
-
|
|
247
|
-
if (
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
} else {
|
|
255
|
-
|
|
256
|
-
Ivar backedTextInputIvar = class_getInstanceVariable([subview class], "_backedTextInput");
|
|
257
|
-
if (backedTextInputIvar != NULL)
|
|
258
|
-
{
|
|
259
|
-
textView = [subview valueForKey:@"_backedTextInput"];
|
|
260
|
-
}
|
|
261
|
-
else if([subview isKindOfClass:[UITextView class]])
|
|
262
|
-
{
|
|
263
|
-
textView = (UITextView*)subview;
|
|
264
|
-
}
|
|
229
|
+
Ivar backedTextInputIvar = class_getInstanceVariable([subview class], "_backedTextInput");
|
|
230
|
+
if (backedTextInputIvar != NULL)
|
|
231
|
+
{
|
|
232
|
+
textView = [subview valueForKey:@"_backedTextInput"];
|
|
233
|
+
}
|
|
234
|
+
else if([subview isKindOfClass:[UITextView class]])
|
|
235
|
+
{
|
|
236
|
+
textView = (UITextView*)subview;
|
|
265
237
|
}
|
|
266
238
|
[self setupTextView:textView];
|
|
267
239
|
}
|
|
@@ -275,11 +247,13 @@ typedef NS_ENUM(NSUInteger, KeyboardTrackingScrollBehavior) {
|
|
|
275
247
|
}
|
|
276
248
|
}
|
|
277
249
|
|
|
278
|
-
|
|
250
|
+
for (RCTScrollView *scrollView in rctScrollViewsArray)
|
|
279
251
|
{
|
|
280
|
-
if(
|
|
252
|
+
if(scrollView.scrollView == _scrollViewToManage)
|
|
281
253
|
{
|
|
282
|
-
|
|
254
|
+
[scrollView removeScrollListener:self];
|
|
255
|
+
[scrollView addScrollListener:self];
|
|
256
|
+
break;
|
|
283
257
|
}
|
|
284
258
|
}
|
|
285
259
|
|
|
@@ -296,8 +270,6 @@ typedef NS_ENUM(NSUInteger, KeyboardTrackingScrollBehavior) {
|
|
|
296
270
|
_originalHeight = _ObservingInputAccessoryViewTemp.height;
|
|
297
271
|
|
|
298
272
|
[self addBottomViewIfNecessary];
|
|
299
|
-
|
|
300
|
-
[self ensureLegacyViewManagerTouchDelegation];
|
|
301
273
|
}
|
|
302
274
|
|
|
303
275
|
- (void)setupTextView:(UITextView*)textView
|
|
@@ -366,12 +338,12 @@ typedef NS_ENUM(NSUInteger, KeyboardTrackingScrollBehavior) {
|
|
|
366
338
|
|
|
367
339
|
-(void)dealloc
|
|
368
340
|
{
|
|
369
|
-
[self removeObserver:self forKeyPath:@"
|
|
341
|
+
[self removeObserver:self forKeyPath:@"bounds"];
|
|
370
342
|
}
|
|
371
343
|
|
|
372
344
|
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary<NSKeyValueChangeKey,id> *)change context:(void *)context
|
|
373
345
|
{
|
|
374
|
-
_ObservingInputAccessoryViewTemp.height = self.
|
|
346
|
+
_ObservingInputAccessoryViewTemp.height = self.bounds.size.height;
|
|
375
347
|
}
|
|
376
348
|
|
|
377
349
|
- (void)ObservingInputAccessoryViewTempKeyboardWillDisappear:(ObservingInputAccessoryViewTemp *)ObservingInputAccessoryViewTemp
|
|
@@ -579,48 +551,9 @@ typedef NS_ENUM(NSUInteger, KeyboardTrackingScrollBehavior) {
|
|
|
579
551
|
[self updateBottomViewFrame];
|
|
580
552
|
|
|
581
553
|
self.transform = CGAffineTransformMakeTranslation(0, accessoryTranslation);
|
|
582
|
-
|
|
583
554
|
[self _updateScrollViewInsets];
|
|
584
555
|
}
|
|
585
556
|
|
|
586
|
-
- (void)ensureLegacyViewManagerTouchDelegation {
|
|
587
|
-
UIView *superview = self.superview;
|
|
588
|
-
if (superview) {
|
|
589
|
-
if ([NSStringFromClass([superview class]) isEqualToString:@"RCTLegacyViewManagerInteropComponentView"]) {
|
|
590
|
-
[self changeLegacyViewManagerHitTestDelegation:superview];
|
|
591
|
-
}
|
|
592
|
-
}
|
|
593
|
-
}
|
|
594
|
-
|
|
595
|
-
- (void)changeLegacyViewManagerHitTestDelegation:(UIView *)wrapperView {
|
|
596
|
-
static dispatch_once_t onceToken;
|
|
597
|
-
static IMP originalHitTestIMP = NULL;
|
|
598
|
-
|
|
599
|
-
dispatch_once(&onceToken, ^{
|
|
600
|
-
Class wrapperClass = [wrapperView class];
|
|
601
|
-
|
|
602
|
-
Method originalMethod = class_getInstanceMethod(wrapperClass, @selector(hitTest:withEvent:));
|
|
603
|
-
if (originalMethod) {
|
|
604
|
-
originalHitTestIMP = method_getImplementation(originalMethod);
|
|
605
|
-
|
|
606
|
-
IMP customHitTest = imp_implementationWithBlock(^UIView*(id self, CGPoint point, UIEvent *event) {
|
|
607
|
-
UIView *subview = [self subviews].firstObject;
|
|
608
|
-
if (subview &&
|
|
609
|
-
[subview isKindOfClass:[KeyboardTrackingViewTemp class]]) {
|
|
610
|
-
CGPoint convertedPoint = [self convertPoint:point toView:subview];
|
|
611
|
-
UIView *result = [subview hitTest:convertedPoint withEvent:event];
|
|
612
|
-
return result;
|
|
613
|
-
}
|
|
614
|
-
|
|
615
|
-
UIView* (*originalFunc)(id, SEL, CGPoint, UIEvent*) = (void*)originalHitTestIMP;
|
|
616
|
-
return originalFunc(self, @selector(hitTest:withEvent:), point, event);
|
|
617
|
-
});
|
|
618
|
-
|
|
619
|
-
method_setImplementation(originalMethod, customHitTest);
|
|
620
|
-
}
|
|
621
|
-
});
|
|
622
|
-
}
|
|
623
|
-
|
|
624
557
|
- (void)performScrollToFocusedInput
|
|
625
558
|
{
|
|
626
559
|
if (_scrollViewToManage != nil && self.scrollToFocusedInput)
|
|
@@ -802,4 +735,3 @@ RCT_EXPORT_METHOD(scrollToStart:(nonnull NSNumber *)reactTag)
|
|
|
802
735
|
}
|
|
803
736
|
|
|
804
737
|
@end
|
|
805
|
-
|
package/lib/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "uilib-native",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "4.5.2",
|
|
4
4
|
"homepage": "https://github.com/wix/react-native-ui-lib",
|
|
5
5
|
"description": "uilib native components (separated from js components)",
|
|
6
6
|
"main": "components/index",
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"shell-utils": "^1.0.10"
|
|
18
18
|
},
|
|
19
19
|
"peerDependencies": {
|
|
20
|
-
"react": ">=
|
|
21
|
-
"react-native": ">=0.
|
|
20
|
+
"react": ">=17.0.1",
|
|
21
|
+
"react-native": ">=0.64.1"
|
|
22
22
|
}
|
|
23
23
|
}
|
|
@@ -10,9 +10,11 @@ module.exports = {
|
|
|
10
10
|
sourceDir: './android/',
|
|
11
11
|
packageImportPath: `import com.wix.reactnativeuilib.dynamicfont.DynamicFontPackage;
|
|
12
12
|
import com.wix.reactnativeuilib.highlighterview.HighlighterViewPackage;
|
|
13
|
-
import com.wix.reactnativeuilib.keyboardinput.KeyboardInputPackage
|
|
13
|
+
import com.wix.reactnativeuilib.keyboardinput.KeyboardInputPackage;
|
|
14
|
+
import com.wix.reactnativeuilib.textinput.TextInputDelKeyHandlerPackage;`,
|
|
14
15
|
packageInstance: `new DynamicFontPackage(),
|
|
15
16
|
new HighlighterViewPackage(),
|
|
17
|
+
new TextInputDelKeyHandlerPackage(),
|
|
16
18
|
new KeyboardInputPackage(getApplication())`
|
|
17
19
|
}
|
|
18
20
|
}
|
package/metro.config.js
CHANGED
|
@@ -5,9 +5,9 @@ const {assetExts, sourceExts} = defaultConfig.resolver;
|
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Metro configuration
|
|
8
|
-
* https://
|
|
8
|
+
* https://facebook.github.io/metro/docs/configuration
|
|
9
9
|
*
|
|
10
|
-
* @type {import('
|
|
10
|
+
* @type {import('metro-config').MetroConfig}
|
|
11
11
|
*/
|
|
12
12
|
|
|
13
13
|
const config = {
|