react-native-ui-lib 8.1.1 → 8.1.5
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/lib/android/build.gradle +32 -0
- package/lib/android/src/main/AndroidManifest.xml +4 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/UiLibPackageList.java +28 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/dynamicfont/DynamicFontModule.java +139 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/dynamicfont/DynamicFontPackage.java +28 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/highlighterview/HighlightFrame.java +33 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/highlighterview/HighlightViewTagParams.java +50 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/highlighterview/HighlighterView.java +167 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/highlighterview/HighlighterViewManager.java +131 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/highlighterview/HighlighterViewPackage.java +28 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/highlighterview/UiUtils.java +50 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/AppContextHolder.java +52 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/CustomKeyboardLayout.java +213 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/CustomKeyboardRootView.java +39 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/CustomKeyboardRootViewManager.java +29 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/CustomKeyboardRootViewShadow.java +29 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/KeyboardInputModule.java +34 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/KeyboardInputPackage.java +49 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/ReactContextHolder.java +16 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/ReactScreenMonitor.java +83 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/ReactSoftKeyboardMonitor.java +163 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/utils/PredicateFunc.java +5 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/utils/RuntimeUtils.java +33 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/keyboardinput/utils/ViewUtils.java +65 -0
- package/lib/android/src/main/java/com/wix/reactnativeuilib/utils/LogForwarder.java +45 -0
- package/lib/android/src/main/res/layout/wheel_picker.xml +9 -0
- package/lib/android/src/main/res/values/colors.xml +9 -0
- package/lib/android/src/main/res/values/styles.xml +9 -0
- package/lib/components/Keyboard/KeyboardAccessoryView/KeyboardRegistry/keyboardRegistry.api.json +50 -0
- package/lib/components/Keyboard/KeyboardAccessoryView/keyboardAccessoryView.api.json +58 -0
- package/lib/components/Keyboard/KeyboardAwareInsetsView/keyboardAwareInsetsView.api.json +14 -0
- package/lib/components/Keyboard/KeyboardTrackingView/keyboardTrackingView.api.json +86 -0
- package/lib/ios/reactnativeuilib/dynamicfont/DynamicFont.h +9 -0
- package/lib/ios/reactnativeuilib/dynamicfont/DynamicFont.m +115 -0
- package/lib/ios/reactnativeuilib/highlighterview/HighlighterView.h +19 -0
- package/lib/ios/reactnativeuilib/highlighterview/HighlighterView.m +216 -0
- package/lib/ios/reactnativeuilib/highlighterview/HighlighterViewManager.h +6 -0
- package/lib/ios/reactnativeuilib/highlighterview/HighlighterViewManager.m +28 -0
- package/lib/ios/reactnativeuilib/keyboardinput/lninterpolation/Color+Interpolation.h +39 -0
- package/lib/ios/reactnativeuilib/keyboardinput/lninterpolation/Color+Interpolation.m +160 -0
- package/lib/ios/reactnativeuilib/keyboardinput/lninterpolation/LNAnimatorTemp.h +36 -0
- package/lib/ios/reactnativeuilib/keyboardinput/lninterpolation/LNAnimatorTemp.m +121 -0
- package/lib/ios/reactnativeuilib/keyboardinput/lninterpolation/LNInterpolable.h +48 -0
- package/lib/ios/reactnativeuilib/keyboardinput/lninterpolation/LNInterpolable.m +27 -0
- package/lib/ios/reactnativeuilib/keyboardinput/lninterpolation/LNInterpolation.h +16 -0
- package/lib/ios/reactnativeuilib/keyboardinput/lninterpolation/NSValue+Interpolation.h +19 -0
- package/lib/ios/reactnativeuilib/keyboardinput/lninterpolation/NSValue+Interpolation.mm +155 -0
- package/lib/ios/reactnativeuilib/keyboardinput/rctcustomInputcontroller/RCTCustomInputControllerTemp.h +16 -0
- package/lib/ios/reactnativeuilib/keyboardinput/rctcustomInputcontroller/RCTCustomInputControllerTemp.m +450 -0
- package/lib/ios/reactnativeuilib/keyboardinput/rctcustomInputcontroller/RCTCustomKeyboardViewControllerTemp.h +18 -0
- package/lib/ios/reactnativeuilib/keyboardinput/rctcustomInputcontroller/RCTCustomKeyboardViewControllerTemp.m +99 -0
- package/lib/ios/reactnativeuilib/keyboardtrackingview/KeyboardTrackingViewTempManager.h +14 -0
- package/lib/ios/reactnativeuilib/keyboardtrackingview/KeyboardTrackingViewTempManager.m +827 -0
- package/lib/ios/reactnativeuilib/keyboardtrackingview/ObservingInputAccessoryViewTemp.h +44 -0
- package/lib/ios/reactnativeuilib/keyboardtrackingview/ObservingInputAccessoryViewTemp.m +171 -0
- package/lib/ios/reactnativeuilib/keyboardtrackingview/UIResponder+FirstResponderTemp.h +6 -0
- package/lib/ios/reactnativeuilib/keyboardtrackingview/UIResponder+FirstResponderTemp.m +17 -0
- package/lib/ios/reactnativeuilib/safearea/SafeAreaManager.h +6 -0
- package/lib/ios/reactnativeuilib/safearea/SafeAreaManager.m +105 -0
- package/lib/ios/reactnativeuilib/safearea/SafeAreaSpacerShadowView.h +5 -0
- package/lib/ios/reactnativeuilib/safearea/SafeAreaSpacerShadowView.m +20 -0
- package/lib/ios/reactnativeuilib/safearea/SafeAreaSpacerView.h +7 -0
- package/lib/ios/reactnativeuilib/safearea/SafeAreaSpacerView.m +76 -0
- package/lib/ios/reactnativeuilib/safearea/SafeAreaSpacerViewLocalData.h +9 -0
- package/lib/ios/reactnativeuilib/safearea/SafeAreaSpacerViewLocalData.m +14 -0
- package/lib/ios/reactnativeuilib/safearea/SafeAreaSpacerViewManager.h +5 -0
- package/lib/ios/reactnativeuilib/safearea/SafeAreaSpacerViewManager.m +26 -0
- package/lib/specs/HighlighterViewNativeComponent.ts +78 -0
- package/lib/specs/KeyboardTrackingViewNativeComponent.ts +74 -0
- package/package.json +2 -25
- package/src/assets/Assets.d.ts +5 -0
- package/src/assets/emojis/index.d.ts +1343 -0
- package/src/assets/index.d.ts +3 -0
- package/src/assets/internal/index.d.ts +4 -0
- package/src/commons/Config.d.ts +24 -0
- package/src/commons/Constants.d.ts +54 -0
- package/src/commons/UIComponent.d.ts +4 -0
- package/src/commons/asBaseComponent.d.ts +15 -0
- package/src/commons/baseComponent.d.ts +2 -0
- package/src/commons/forwardRef.d.ts +8 -0
- package/src/commons/modifiers.d.ts +118 -0
- package/src/commons/new.d.ts +8 -0
- package/src/commons/withScrollEnabler.d.ts +13 -0
- package/src/commons/withScrollReached.d.ts +35 -0
- package/src/components/WheelPicker/Item.d.ts +28 -0
- package/src/components/WheelPicker/WheelPicker.driver.d.ts +18 -0
- package/src/components/WheelPicker/WheelPickerItem.driver.d.ts +8 -0
- package/src/components/WheelPicker/helpers/useListMiddleIndex.d.ts +6 -0
- package/src/components/WheelPicker/index.d.ts +88 -0
- package/src/components/WheelPicker/types.d.ts +6 -0
- package/src/components/WheelPicker/usePresenter.d.ts +21 -0
- package/src/components/actionBar/index.d.ts +35 -0
- package/src/components/actionSheet/index.d.ts +80 -0
- package/src/components/animatedImage/index.d.ts +28 -0
- package/src/components/avatar/index.d.ts +382 -0
- package/src/components/badge/index.d.ts +879 -0
- package/src/components/baseInput/Validators.d.ts +8 -0
- package/src/components/baseInput/index.d.ts +29 -0
- package/src/components/button/Button.driver.new.d.ts +34 -0
- package/src/components/button/ButtonConstants.d.ts +26 -0
- package/src/components/button/index.d.ts +573 -0
- package/src/components/button/types.d.ts +157 -0
- package/src/components/card/CardContext.d.ts +3 -0
- package/src/components/card/CardImage.d.ts +20 -0
- package/src/components/card/CardPresenter.d.ts +12 -0
- package/src/components/card/CardSection.d.ts +79 -0
- package/src/components/card/asCardChild.d.ts +6 -0
- package/src/components/card/index.d.ts +120 -0
- package/src/components/carousel/Carousel.driver.new.d.ts +9 -0
- package/src/components/carousel/CarouselPresenter.d.ts +9 -0
- package/src/components/carousel/index.d.ts +73 -0
- package/src/components/carousel/types.d.ts +107 -0
- package/src/components/checkbox/Checkbox.driver.d.ts +15 -0
- package/src/components/checkbox/index.d.ts +129 -0
- package/src/components/chip/chip.driver.d.ts +33 -0
- package/src/components/chip/index.d.ts +209 -0
- package/src/components/chipsInput/index.d.ts +55 -0
- package/src/components/colorPalette/index.d.ts +116 -0
- package/src/components/colorPicker/ColorPickerDialog.d.ts +39 -0
- package/src/components/colorPicker/ColorPickerDialogHeader.d.ts +9 -0
- package/src/components/colorPicker/ColorPickerDialogSliders.d.ts +10 -0
- package/src/components/colorPicker/ColorPickerPresenter.d.ts +16 -0
- package/src/components/colorPicker/ColorPickerPreview.d.ts +12 -0
- package/src/components/colorPicker/index.d.ts +45 -0
- package/src/components/colorSwatch/index.d.ts +50 -0
- package/src/components/connectionStatusBar/index.d.ts +33 -0
- package/src/components/connectionStatusBar/types.d.ts +28 -0
- package/src/components/dash/index.d.ts +19 -0
- package/src/components/dateTimePicker/DateTimePicker.driver.d.ts +7 -0
- package/src/components/dateTimePicker/index.d.ts +288 -0
- package/src/components/dateTimePicker/useOldApi.d.ts +27 -0
- package/src/components/dialog/Dialog.driver.new.d.ts +6 -0
- package/src/components/dialog/DialogHeader.d.ts +4 -0
- package/src/components/dialog/index.d.ts +15 -0
- package/src/components/dialog/types.d.ts +138 -0
- package/src/components/dialog/useDialogContent.d.ts +13 -0
- package/src/components/drawer/Swipeable.d.ts +94 -0
- package/src/components/drawer/index.d.ts +161 -0
- package/src/components/expandableSection/index.d.ts +40 -0
- package/src/components/fadedScrollView/index.d.ts +59 -0
- package/src/components/fader/index.d.ts +37 -0
- package/src/components/featureHighlight/index.d.ts +147 -0
- package/src/components/floatingButton/index.d.ts +89 -0
- package/src/components/gradient/index.d.ts +19 -0
- package/src/components/gridList/index.d.ts +5 -0
- package/src/components/gridList/types.d.ts +29 -0
- package/src/components/gridList/useGridLayout.d.ts +15 -0
- package/src/components/gridListItem/index.d.ts +132 -0
- package/src/components/gridView/index.d.ts +80 -0
- package/src/components/hint/Hint.driver.d.ts +6 -0
- package/src/components/hint/Hint.driver.new.d.ts +19 -0
- package/src/components/hint/HintAnchor.d.ts +13 -0
- package/src/components/hint/HintBubble.d.ts +12 -0
- package/src/components/hint/HintMockChildren.d.ts +8 -0
- package/src/components/hint/HintOld.d.ts +196 -0
- package/src/components/hint/hooks/useHintAccessibility.d.ts +10 -0
- package/src/components/hint/hooks/useHintLayout.d.ts +13 -0
- package/src/components/hint/hooks/useHintPosition.d.ts +29 -0
- package/src/components/hint/hooks/useHintVisibility.d.ts +6 -0
- package/src/components/hint/index.d.ts +14 -0
- package/src/components/hint/types.d.ts +106 -0
- package/src/components/icon/index.d.ts +97 -0
- package/src/components/image/Image.driver.d.ts +4 -0
- package/src/components/image/Image.driver.new.d.ts +2 -0
- package/src/components/image/index.d.ts +192 -0
- package/src/components/listItem/ListItemPart.d.ts +15 -0
- package/src/components/listItem/index.d.ts +52 -0
- package/src/components/listItem/types.d.ts +60 -0
- package/src/components/loaderScreen/index.d.ts +13 -0
- package/src/components/loaderScreen/types.d.ts +32 -0
- package/src/components/marquee/index.d.ts +5 -0
- package/src/components/marquee/types.d.ts +35 -0
- package/src/components/maskedInput/index.d.ts +5 -0
- package/src/components/maskedInput/new.d.ts +22 -0
- package/src/components/modal/Modal.driver.new.d.ts +8 -0
- package/src/components/modal/TopBar.d.ts +89 -0
- package/src/components/modal/index.d.ts +64 -0
- package/src/components/numberInput/NumberInput.driver.d.ts +6 -0
- package/src/components/numberInput/Presenter.d.ts +21 -0
- package/src/components/numberInput/index.d.ts +57 -0
- package/src/components/overlay/index.d.ts +68 -0
- package/src/components/pageControl/index.d.ts +56 -0
- package/src/components/panView/index.d.ts +21 -0
- package/src/components/panView/panningUtil.d.ts +38 -0
- package/src/components/panView/usePanGesture.d.ts +49 -0
- package/src/components/picker/Picker.driver.new.d.ts +44 -0
- package/src/components/picker/PickerContext.d.ts +4 -0
- package/src/components/picker/PickerItem.d.ts +11 -0
- package/src/components/picker/PickerItemsList.d.ts +4 -0
- package/src/components/picker/PickerPresenter.d.ts +7 -0
- package/src/components/picker/PickerSelectionStatusBar.d.ts +3 -0
- package/src/components/picker/helpers/useFieldType.d.ts +373 -0
- package/src/components/picker/helpers/useImperativePickerHandle.d.ts +5 -0
- package/src/components/picker/helpers/useNewPickerProps.d.ts +3 -0
- package/src/components/picker/helpers/usePickerLabel.d.ts +17 -0
- package/src/components/picker/helpers/usePickerMigrationWarnings.d.ts +4 -0
- package/src/components/picker/helpers/usePickerSearch.d.ts +9 -0
- package/src/components/picker/helpers/usePickerSelection.d.ts +16 -0
- package/src/components/picker/index.d.ts +15 -0
- package/src/components/picker/types.d.ts +321 -0
- package/src/components/pieChart/PieSegment.d.ts +34 -0
- package/src/components/pieChart/index.d.ts +15 -0
- package/src/components/progressBar/index.d.ts +65 -0
- package/src/components/progressiveImage/index.d.ts +23 -0
- package/src/components/radioButton/RadioButton.driver.d.ts +9 -0
- package/src/components/radioButton/index.d.ts +121 -0
- package/src/components/radioGroup/RadioGroup.driver.d.ts +13 -0
- package/src/components/radioGroup/RadioGroupContext.d.ts +14 -0
- package/src/components/radioGroup/asRadioGroupChild.d.ts +2 -0
- package/src/components/radioGroup/index.d.ts +47 -0
- package/src/components/scrollBar/index.d.ts +88 -0
- package/src/components/searchInput/index.d.ts +37 -0
- package/src/components/searchInput/types.d.ts +66 -0
- package/src/components/sectionsWheelPicker/SectionsWheelPicker.driver.d.ts +25 -0
- package/src/components/sectionsWheelPicker/index.d.ts +43 -0
- package/src/components/segmentedControl/index.d.ts +90 -0
- package/src/components/segmentedControl/segment.d.ts +111 -0
- package/src/components/segmentedControl/useSegmentedControlPreset.d.ts +10 -0
- package/src/components/skeletonView/index.d.ts +163 -0
- package/src/components/slider/ColorSliderGroup.d.ts +13 -0
- package/src/components/slider/GradientSlider.d.ts +20 -0
- package/src/components/slider/SliderContext.d.ts +8 -0
- package/src/components/slider/Thumb.d.ts +32 -0
- package/src/components/slider/index.d.ts +31 -0
- package/src/components/slider/slider.driver.d.ts +5 -0
- package/src/components/slider/types.d.ts +197 -0
- package/src/components/sortableGridList/SortableItem.d.ts +6 -0
- package/src/components/sortableGridList/index.d.ts +5 -0
- package/src/components/sortableGridList/types.d.ts +34 -0
- package/src/components/sortableGridList/usePresenter.d.ts +21 -0
- package/src/components/sortableList/SortableList.driver.new.d.ts +2 -0
- package/src/components/sortableList/SortableListContext.d.ts +19 -0
- package/src/components/sortableList/SortableListItem.d.ts +8 -0
- package/src/components/sortableList/SortableListItem.driver.new.d.ts +11 -0
- package/src/components/sortableList/index.d.ts +5 -0
- package/src/components/sortableList/types.d.ts +48 -0
- package/src/components/sortableList/usePresenter.d.ts +12 -0
- package/src/components/stackAggregator/index.d.ts +89 -0
- package/src/components/stateScreen/index.d.ts +5 -0
- package/src/components/stateScreen/types.d.ts +30 -0
- package/src/components/stepper/index.d.ts +47 -0
- package/src/components/svgImage/index.d.ts +14 -0
- package/src/components/svgImage/index.web.d.ts +18 -0
- package/src/components/switch/index.d.ts +102 -0
- package/src/components/switch/switch.driver.d.ts +18 -0
- package/src/components/tabController/PageCarousel.d.ts +9 -0
- package/src/components/tabController/TabBar.d.ts +97 -0
- package/src/components/tabController/TabBarContext.d.ts +18 -0
- package/src/components/tabController/TabBarItem.d.ts +105 -0
- package/src/components/tabController/TabPage.d.ts +33 -0
- package/src/components/tabController/index.d.ts +48 -0
- package/src/components/tabController/useImperativeTabControllerHandle.d.ts +6 -0
- package/src/components/tabController/useScrollToItem.d.ts +79 -0
- package/src/components/text/Text.driver.d.ts +7 -0
- package/src/components/text/Text.driver.new.d.ts +17 -0
- package/src/components/text/index.d.ts +195 -0
- package/src/components/textField/CharCounter.d.ts +7 -0
- package/src/components/textField/ClearButton.d.ts +4 -0
- package/src/components/textField/FieldContext.d.ts +4 -0
- package/src/components/textField/FloatingPlaceholder.d.ts +7 -0
- package/src/components/textField/Input.d.ts +8 -0
- package/src/components/textField/Label.d.ts +7 -0
- package/src/components/textField/Presenter.d.ts +7 -0
- package/src/components/textField/TextField.driver.new.d.ts +129 -0
- package/src/components/textField/ValidationMessage.d.ts +7 -0
- package/src/components/textField/index.d.ts +114 -0
- package/src/components/textField/presets/outline.d.ts +737 -0
- package/src/components/textField/presets/underline.d.ts +735 -0
- package/src/components/textField/textInput/index.d.ts +1 -0
- package/src/components/textField/textInput/index.web.d.ts +3 -0
- package/src/components/textField/types.d.ts +287 -0
- package/src/components/textField/useFieldState.d.ts +16 -0
- package/src/components/textField/useImperativeInputHandle.d.ts +4 -0
- package/src/components/textField/usePreset.d.ts +1696 -0
- package/src/components/textField/validators.d.ts +9 -0
- package/src/components/textFieldOld/index.d.ts +71 -0
- package/src/components/timeline/Line.d.ts +10 -0
- package/src/components/timeline/Point.d.ts +9 -0
- package/src/components/timeline/index.d.ts +11 -0
- package/src/components/timeline/line.driver.d.ts +10 -0
- package/src/components/timeline/point.driver.d.ts +8 -0
- package/src/components/timeline/timeline.driver.d.ts +25 -0
- package/src/components/timeline/types.d.ts +50 -0
- package/src/components/touchableOpacity/index.d.ts +50 -0
- package/src/components/view/View.driver.new.d.ts +7 -0
- package/src/components/view/index.d.ts +46 -0
- package/src/components/wizard/WizardStates.d.ts +2 -0
- package/src/components/wizard/WizardStep.d.ts +4 -0
- package/src/components/wizard/index.d.ts +31 -0
- package/src/components/wizard/types.d.ts +90 -0
- package/src/helpers/AvatarHelper.d.ts +9 -0
- package/src/helpers/FormattingPresenter.d.ts +6 -0
- package/src/helpers/Profiler.d.ts +22 -0
- package/src/helpers/index.d.ts +3 -0
- package/src/hooks/index.d.ts +14 -0
- package/src/hooks/useCombinedRefs/index.d.ts +3 -0
- package/src/hooks/useDebounce/index.d.ts +5 -0
- package/src/hooks/useDidUpdate/index.d.ts +6 -0
- package/src/hooks/useHiddenLocation/index.d.ts +13 -0
- package/src/hooks/useHiddenLocation/index.web.d.ts +13 -0
- package/src/hooks/useKeyboardHeight/index.d.ts +5 -0
- package/src/hooks/useMeasure/index.d.ts +15 -0
- package/src/hooks/useModifiers/index.d.ts +3 -0
- package/src/hooks/useOrientation/index.d.ts +7 -0
- package/src/hooks/useScrollEnabler/index.d.ts +23 -0
- package/src/hooks/useScrollReached/index.d.ts +28 -0
- package/src/hooks/useScrollTo/index.d.ts +37 -0
- package/src/hooks/useScrollToItem/index.d.ts +65 -0
- package/src/hooks/useThemeProps/index.d.ts +2 -0
- package/src/hooks/useToggleValue/index.d.ts +2 -0
- package/src/incubator/TouchableOpacity.d.ts +52 -0
- package/src/incubator/calendar/Agenda.d.ts +4 -0
- package/src/incubator/calendar/CalendarContext.d.ts +4 -0
- package/src/incubator/calendar/CalendarItem.d.ts +5 -0
- package/src/incubator/calendar/Day.d.ts +4 -0
- package/src/incubator/calendar/Day_OLD.d.ts +4 -0
- package/src/incubator/calendar/Header.d.ts +4 -0
- package/src/incubator/calendar/Month.d.ts +4 -0
- package/src/incubator/calendar/TodayButton.d.ts +4 -0
- package/src/incubator/calendar/Week.d.ts +4 -0
- package/src/incubator/calendar/WeekDaysNames.d.ts +4 -0
- package/src/incubator/calendar/helpers/CalendarProcessor.d.ts +2 -0
- package/src/incubator/calendar/helpers/DataProcessor.d.ts +2 -0
- package/src/incubator/calendar/helpers/DateUtils.d.ts +23 -0
- package/src/incubator/calendar/index.d.ts +7 -0
- package/src/incubator/calendar/types.d.ts +118 -0
- package/src/incubator/expandableOverlay/ExpandableOverlay.driver.d.ts +7 -0
- package/src/incubator/expandableOverlay/index.d.ts +83 -0
- package/src/incubator/gradient/BorderGradient.d.ts +4 -0
- package/src/incubator/gradient/CircleGradient.d.ts +4 -0
- package/src/incubator/gradient/RectangleGradient.d.ts +4 -0
- package/src/incubator/gradient/index.d.ts +5 -0
- package/src/incubator/gradient/types.d.ts +26 -0
- package/src/incubator/gradient/useAngleTransform.d.ts +27 -0
- package/src/incubator/index.d.ts +9 -0
- package/src/incubator/slider/Slider.driver.d.ts +5 -0
- package/src/incubator/slider/SliderPresenter.d.ts +6 -0
- package/src/incubator/slider/Thumb.d.ts +24 -0
- package/src/incubator/slider/Track.d.ts +13 -0
- package/src/incubator/slider/index.d.ts +139 -0
- package/src/incubator/toast/Toast.driver.new.d.ts +54 -0
- package/src/incubator/toast/helpers/useToastAnimation.d.ts +22 -0
- package/src/incubator/toast/helpers/useToastPresets.d.ts +8 -0
- package/src/incubator/toast/helpers/useToastTimer.d.ts +6 -0
- package/src/incubator/toast/index.d.ts +9 -0
- package/src/incubator/toast/index.js +4 -1
- package/src/incubator/toast/types.d.ts +111 -0
- package/src/index.d.ts +92 -0
- package/src/optionalDependencies/BlurViewPackage.d.ts +2 -0
- package/src/optionalDependencies/BlurViewPackage.web.d.ts +2 -0
- package/src/optionalDependencies/DateTimePickerPackage.d.ts +2 -0
- package/src/optionalDependencies/FlashListPackage.d.ts +2 -0
- package/src/optionalDependencies/HapticFeedbackPackage.d.ts +2 -0
- package/src/optionalDependencies/LinearGradientPackage.d.ts +2 -0
- package/src/optionalDependencies/MomentPackage.d.ts +2 -0
- package/src/optionalDependencies/NetInfoPackage.d.ts +2 -0
- package/src/optionalDependencies/PostCssPackage.d.ts +5 -0
- package/src/optionalDependencies/ShimmerPackage.d.ts +2 -0
- package/src/optionalDependencies/SvgPackage.d.ts +3 -0
- package/src/optionalDependencies/index.d.ts +9 -0
- package/src/optionalDependencies/index.web.d.ts +7 -0
- package/src/services/HapticService.d.ts +15 -0
- package/src/services/LogService.d.ts +35 -0
- package/src/services/index.d.ts +2 -0
- package/src/style/borderRadiuses.d.ts +30 -0
- package/src/style/colorName.d.ts +8 -0
- package/src/style/colorNameMap.d.ts +2 -0
- package/src/style/colors.d.ts +274 -0
- package/src/style/colorsPalette.d.ts +101 -0
- package/src/style/components.d.ts +15 -0
- package/src/style/componentsColors.d.ts +5 -0
- package/src/style/designTokens.d.ts +69 -0
- package/src/style/designTokensDM.d.ts +69 -0
- package/src/style/dividers.d.ts +11 -0
- package/src/style/index.d.ts +13 -0
- package/src/style/scheme.d.ts +57 -0
- package/src/style/shadows.d.ts +223 -0
- package/src/style/spacings.d.ts +32 -0
- package/src/style/themeManager.d.ts +22 -0
- package/src/style/typography.d.ts +26 -0
- package/src/style/typographyPresets.d.ts +7 -0
- package/src/testkit/Component.driver.d.ts +30 -0
- package/src/testkit/DriverException.d.ts +12 -0
- package/src/testkit/UniDriver.d.ts +29 -0
- package/src/testkit/drivers/TestingLibraryDriver.d.ts +26 -0
- package/src/testkit/index.d.ts +25 -0
- package/src/testkit/new/Component.driver.d.ts +16 -0
- package/src/testkit/new/useDraggable.driver.d.ts +15 -0
- package/src/testkit/new/usePressable.driver.d.ts +14 -0
- package/src/testkit/new/useScrollable.driver.d.ts +13 -0
- package/src/typings/assets.d.ts +52 -0
- package/src/typings/common.d.ts +12 -0
- package/src/typings/module.d.ts +13 -0
- package/src/typings/recorderTypes.d.ts +13 -0
- package/src/uilib-test-renderer/helper.d.ts +8 -0
- package/src/uilib-test-renderer/index.d.ts +4 -0
- package/src/uilib-test-renderer/scrollViewHelper.d.ts +9 -0
- package/src/utils/dateUtils.d.ts +2 -0
- package/src/utils/imageUtils.d.ts +5 -0
- package/src/utils/index.d.ts +4 -0
- package/src/utils/styleUtils.d.ts +7 -0
- package/src/utils/textUtils.d.ts +8 -0
- package/jestSetup/jest-setup.js +0 -154
- package/lib/components/DynamicFonts/FontDownloader.d.js +0 -1
- package/lib/components/DynamicFonts/FontLoader.d.js +0 -1
- package/lib/components/DynamicFonts/NoPermissionsAcquirer.d.js +0 -1
- package/lib/components/DynamicFonts/PermissionsAcquirer.android.d.js +0 -1
- package/lib/components/DynamicFonts/PermissionsAcquirer.ios.d.js +0 -2
- package/lib/components/DynamicFonts/PermissionsAcquirer.web.d.js +0 -2
- package/lib/components/DynamicFonts/RNFSPackage.d.js +0 -1
- package/lib/components/DynamicFonts/index.d.js +0 -3
- package/lib/components/HighlighterOverlayView/index.d.js +0 -1
- package/lib/components/HighlighterOverlayView/index.web.d.js +0 -1
- package/lib/components/Keyboard/KeyboardAccessoryView/CustomKeyboardView/CustomKeyboardView.android.d.js +0 -2
- package/lib/components/Keyboard/KeyboardAccessoryView/CustomKeyboardView/CustomKeyboardView.ios.d.js +0 -2
- package/lib/components/Keyboard/KeyboardAccessoryView/CustomKeyboardView/CustomKeyboardViewBase.d.js +0 -2
- package/lib/components/Keyboard/KeyboardAccessoryView/CustomKeyboardView/index.d.js +0 -1
- package/lib/components/Keyboard/KeyboardAccessoryView/CustomKeyboardView/index.web.d.js +0 -1
- package/lib/components/Keyboard/KeyboardAccessoryView/KeyboardRegistry/EventEmitterManager/index.d.js +0 -1
- package/lib/components/Keyboard/KeyboardAccessoryView/KeyboardRegistry/index.d.js +0 -5
- package/lib/components/Keyboard/KeyboardAccessoryView/KeyboardUtils/index.d.js +0 -1
- package/lib/components/Keyboard/KeyboardAccessoryView/TextInputKeyboardManager/TextInputKeyboardManager.android.d.js +0 -1
- package/lib/components/Keyboard/KeyboardAccessoryView/TextInputKeyboardManager/TextInputKeyboardManager.ios.d.js +0 -1
- package/lib/components/Keyboard/KeyboardAccessoryView/TextInputKeyboardManager/index.d.js +0 -1
- package/lib/components/Keyboard/KeyboardAccessoryView/index.d.js +0 -7
- package/lib/components/Keyboard/KeyboardAwareInsetsView/index.d.js +0 -1
- package/lib/components/Keyboard/KeyboardTrackingView/KeyboardTrackingView.android.d.js +0 -1
- package/lib/components/Keyboard/KeyboardTrackingView/KeyboardTrackingView.ios.d.js +0 -10
- package/lib/components/Keyboard/KeyboardTrackingView/index.d.js +0 -1
- package/lib/components/Keyboard/KeyboardTrackingView/index.web.d.js +0 -1
- package/lib/components/Keyboard/index.d.js +0 -4
- package/lib/components/SafeArea/SafeAreaInsetsManager.d.js +0 -1
- package/lib/components/SafeArea/SafeAreaSpacerView.d.js +0 -1
- package/lib/components/SafeArea/SafeAreaSpacerView.web.d.js +0 -1
- package/lib/components/SafeArea/index.d.js +0 -1
- package/lib/components/index.d.js +0 -6
- package/lib/scripts/releaseNative.js +0 -72
- package/lib/specs/HighlighterViewNativeComponent.d.js +0 -1
- package/lib/specs/HighlighterViewNativeComponent.js +0 -8
- package/lib/specs/KeyboardTrackingViewNativeComponent.d.js +0 -1
- package/lib/specs/KeyboardTrackingViewNativeComponent.js +0 -8
- package/scripts/build/.babelrc.exports.js +0 -6
- package/scripts/build/build.js +0 -35
- package/scripts/build/buildPackages/buildComponentsPackages.js +0 -18
- package/scripts/build/buildPackages/buildCustomPackages.js +0 -106
- package/scripts/build/buildPackages/index.js +0 -6
- package/scripts/createCalendarMockData.js +0 -37
- package/scripts/docs/buildDocs.js +0 -1
- package/scripts/prepush.js +0 -71
- package/scripts/release/prReleaseNotes.js +0 -6
- package/scripts/release/release.js +0 -99
- package/scripts/updateWebAssets.js +0 -88
- package/scripts/utils.js +0 -21
- package/src/assets/__tests__/Assets.spec.js +0 -110
- package/src/commons/__tests__/baseComponent.spec.js +0 -36
- package/src/commons/__tests__/constants.spec.js +0 -202
- package/src/commons/__tests__/modifiers.spec.js +0 -453
- package/src/components/WheelPicker/__tests__/index.spec.js +0 -121
- package/src/components/WheelPicker/__tests__/useListMiddleIndex.spec.js +0 -40
- package/src/components/WheelPicker/__tests__/usePresenter.spec.js +0 -87
- package/src/components/avatar/__tests__/index.spec.js +0 -25
- package/src/components/badge/__tests__/index.spec.js +0 -84
- package/src/components/button/__tests__/index.driver.spec.js +0 -209
- package/src/components/button/__tests__/index.spec.js +0 -287
- package/src/components/card/__tests__/CardPresenter.spec.js +0 -35
- package/src/components/carousel/__tests__/CarouselPresenter.spec.js +0 -52
- package/src/components/carousel/__tests__/index.spec.js +0 -89
- package/src/components/checkbox/__tests__/index.spec.js +0 -357
- package/src/components/chip/__tests__/index.spec.js +0 -63
- package/src/components/connectionStatusBar/__tests__/index.spec.js +0 -41
- package/src/components/dateTimePicker/__tests__/index.spec.js +0 -44
- package/src/components/dialog/__tests__/index.new.spec.js +0 -118
- package/src/components/featureHighlight/__tests__/index.spec.js +0 -76
- package/src/components/floatingButton/__tests__/index.spec.js +0 -229
- package/src/components/hint/__tests__/index.spec.js +0 -108
- package/src/components/image/__tests__/index.spec.js +0 -56
- package/src/components/maskedInput/__tests__/maskedInput.new.spec.js +0 -19
- package/src/components/maskedInput/__tests__/maskedInput.old.spec.js +0 -20
- package/src/components/modal/__tests__/index.spec.js +0 -58
- package/src/components/numberInput/__tests__/Presenter.spec.js +0 -374
- package/src/components/numberInput/__tests__/index.spec.js +0 -38
- package/src/components/panView/__tests__/panningUtil.spec.js +0 -693
- package/src/components/picker/__tests__/PickerPresenter.spec.js +0 -15
- package/src/components/picker/__tests__/index.spec.js +0 -364
- package/src/components/picker/helpers/__tests__/usePickerLabel.spec.js +0 -96
- package/src/components/radioButton/__tests__/index.spec.js +0 -43
- package/src/components/radioGroup/__tests__/index.spec.js +0 -96
- package/src/components/sectionsWheelPicker/__tests__/index.spec.js +0 -35
- package/src/components/sectionsWheelPicker/__tests__/mockSections.js +0 -28
- package/src/components/segmentedControl/__tests__/index.spec.js +0 -25
- package/src/components/slider/__tests__/index.spec.js +0 -35
- package/src/components/sortableGridList/__tests__/index.spec.js +0 -51
- package/src/components/sortableGridList/__tests__/usePresenter.spec.js +0 -231
- package/src/components/sortableList/__tests__/index.spec.js +0 -105
- package/src/components/switch/__tests__/index.spec.js +0 -96
- package/src/components/text/__tests__/index.driver.spec.js +0 -124
- package/src/components/text/__tests__/index.spec.js +0 -245
- package/src/components/textField/__tests__/Presenter.spec.js +0 -240
- package/src/components/textField/__tests__/index.driver.spec.js +0 -639
- package/src/components/timeline/__tests__/driver.index.spec.js +0 -133
- package/src/helpers/__tests__/AvatarHelper.spec.js +0 -170
- package/src/hooks/useDidUpdate/__tests__/useDidUpdate.spec.js +0 -80
- package/src/hooks/useOrientation/__tests__/useOrientation.spec.js +0 -70
- package/src/hooks/useToggleValue/__tests__/useToggleValue.spec.js +0 -89
- package/src/incubator/calendar/__tests__/DateUtils.spec.js +0 -367
- package/src/incubator/expandableOverlay/__tests__/index.spec.js +0 -114
- package/src/incubator/gradient/__tests__/useAngleTransform.spec.js +0 -126
- package/src/incubator/slider/__tests__/SliderPresenter.spec.js +0 -43
- package/src/incubator/slider/__tests__/index.spec.js +0 -34
- package/src/incubator/toast/__tests__/index.spec.js +0 -64
- package/src/style/__tests__/colors.spec.js +0 -313
- package/src/style/__tests__/scheme.spec.js +0 -119
- package/src/utils/__tests__/Playground.perf.js +0 -14
- package/src/utils/__tests__/imageUtils.spec.js +0 -54
- package/src/utils/__tests__/textUtils.spec.js +0 -446
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
//
|
|
2
|
+
// ObservingInputAccessoryViewTemp.h
|
|
3
|
+
// ReactNativeChat
|
|
4
|
+
//
|
|
5
|
+
// Created by Artal Druk on 11/04/2016.
|
|
6
|
+
// Copyright © 2016 Wix.com All rights reserved.
|
|
7
|
+
//
|
|
8
|
+
|
|
9
|
+
#import <UIKit/UIKit.h>
|
|
10
|
+
|
|
11
|
+
typedef NS_ENUM(NSUInteger, KeyboardState) {
|
|
12
|
+
KeyboardStateHidden,
|
|
13
|
+
KeyboardStateWillShow,
|
|
14
|
+
KeyboardStateShown,
|
|
15
|
+
KeyboardStateWillHide
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
@class ObservingInputAccessoryViewTemp;
|
|
19
|
+
|
|
20
|
+
@interface ObservingInputAccessoryViewTempManager : NSObject;
|
|
21
|
+
+(ObservingInputAccessoryViewTempManager*)sharedInstance;
|
|
22
|
+
@property (nonatomic, weak) ObservingInputAccessoryViewTemp *activeObservingInputAccessoryViewTemp;
|
|
23
|
+
@end
|
|
24
|
+
|
|
25
|
+
@protocol ObservingInputAccessoryViewTempDelegate <NSObject>
|
|
26
|
+
|
|
27
|
+
- (void)ObservingInputAccessoryViewTempDidChangeFrame:(ObservingInputAccessoryViewTemp*)ObservingInputAccessoryViewTemp;
|
|
28
|
+
|
|
29
|
+
@optional
|
|
30
|
+
|
|
31
|
+
- (void)ObservingInputAccessoryViewTempKeyboardWillAppear:(ObservingInputAccessoryViewTemp*)ObservingInputAccessoryViewTemp keyboardDelta:(CGFloat)delta;
|
|
32
|
+
- (void)ObservingInputAccessoryViewTempKeyboardWillDisappear:(ObservingInputAccessoryViewTemp*)ObservingInputAccessoryViewTemp;
|
|
33
|
+
|
|
34
|
+
@end
|
|
35
|
+
|
|
36
|
+
@interface ObservingInputAccessoryViewTemp : UIView
|
|
37
|
+
|
|
38
|
+
@property (nonatomic, weak) id<ObservingInputAccessoryViewTempDelegate> delegate;
|
|
39
|
+
|
|
40
|
+
@property (nonatomic) CGFloat height;
|
|
41
|
+
@property (nonatomic, readonly) CGFloat keyboardHeight;
|
|
42
|
+
@property (nonatomic, readonly) KeyboardState keyboardState;
|
|
43
|
+
|
|
44
|
+
@end
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
//
|
|
2
|
+
// ObservingInputAccessoryViewTemp.m
|
|
3
|
+
// ReactNativeChat
|
|
4
|
+
//
|
|
5
|
+
// Created by Artal Druk on 11/04/2016.
|
|
6
|
+
// Copyright © 2016 Wix.com All rights reserved.
|
|
7
|
+
//
|
|
8
|
+
|
|
9
|
+
#import "ObservingInputAccessoryViewTemp.h"
|
|
10
|
+
|
|
11
|
+
@implementation ObservingInputAccessoryViewTempManager
|
|
12
|
+
|
|
13
|
+
+(ObservingInputAccessoryViewTempManager*)sharedInstance
|
|
14
|
+
{
|
|
15
|
+
static ObservingInputAccessoryViewTempManager *instance = nil;
|
|
16
|
+
static dispatch_once_t ObservingInputAccessoryViewTempManagerOnceToken = 0;
|
|
17
|
+
|
|
18
|
+
dispatch_once(&ObservingInputAccessoryViewTempManagerOnceToken,^
|
|
19
|
+
{
|
|
20
|
+
if (instance == nil)
|
|
21
|
+
{
|
|
22
|
+
instance = [ObservingInputAccessoryViewTempManager new];
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
return instance;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
@end
|
|
30
|
+
|
|
31
|
+
@implementation ObservingInputAccessoryViewTemp
|
|
32
|
+
{
|
|
33
|
+
CGFloat _previousKeyboardHeight;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
- (instancetype)init
|
|
37
|
+
{
|
|
38
|
+
self = [super init];
|
|
39
|
+
|
|
40
|
+
if(self)
|
|
41
|
+
{
|
|
42
|
+
self.userInteractionEnabled = NO;
|
|
43
|
+
self.translatesAutoresizingMaskIntoConstraints = NO;
|
|
44
|
+
self.autoresizingMask = UIViewAutoresizingFlexibleHeight;
|
|
45
|
+
|
|
46
|
+
[self registerForKeyboardNotifications];
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
return self;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
- (void) registerForKeyboardNotifications
|
|
53
|
+
{
|
|
54
|
+
NSNotificationCenter *notificationCenter = [NSNotificationCenter defaultCenter];
|
|
55
|
+
[notificationCenter addObserver:self selector:@selector(_keyboardWillShowNotification:) name:UIKeyboardWillShowNotification object:nil];
|
|
56
|
+
[notificationCenter addObserver:self selector:@selector(_keyboardDidShowNotification:) name:UIKeyboardDidShowNotification object:nil];
|
|
57
|
+
[notificationCenter addObserver:self selector:@selector(_keyboardWillHideNotification:) name:UIKeyboardWillHideNotification object:nil];
|
|
58
|
+
[notificationCenter addObserver:self selector:@selector(_keyboardDidHideNotification:) name:UIKeyboardDidHideNotification object:nil];
|
|
59
|
+
[notificationCenter addObserver:self selector:@selector(_keyboardWillChangeFrameNotification:) name:UIKeyboardWillChangeFrameNotification object:nil];
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
- (void)willMoveToSuperview:(UIView *)newSuperview
|
|
63
|
+
{
|
|
64
|
+
if (self.superview)
|
|
65
|
+
{
|
|
66
|
+
[self.superview removeObserver:self forKeyPath:@"center"];
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
if (newSuperview != nil)
|
|
70
|
+
{
|
|
71
|
+
[newSuperview addObserver:self forKeyPath:@"center" options:NSKeyValueObservingOptionNew context:nil];
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
[super willMoveToSuperview:newSuperview];
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context
|
|
78
|
+
{
|
|
79
|
+
if ((object == self.superview) && ([keyPath isEqualToString:@"center"]))
|
|
80
|
+
{
|
|
81
|
+
CGFloat centerY = self.superview.center.y;
|
|
82
|
+
|
|
83
|
+
if([keyPath isEqualToString:@"center"])
|
|
84
|
+
{
|
|
85
|
+
centerY = [change[NSKeyValueChangeNewKey] CGPointValue].y;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
CGFloat boundsH = self.superview.bounds.size.height;
|
|
89
|
+
|
|
90
|
+
_previousKeyboardHeight = _keyboardHeight;
|
|
91
|
+
_keyboardHeight = MAX(0, self.window.bounds.size.height - (centerY - boundsH / 2) - self.intrinsicContentSize.height);
|
|
92
|
+
|
|
93
|
+
[_delegate ObservingInputAccessoryViewTempDidChangeFrame:self];
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
-(void)dealloc
|
|
98
|
+
{
|
|
99
|
+
[self.superview removeObserver:self forKeyPath:@"center"];
|
|
100
|
+
|
|
101
|
+
[[NSNotificationCenter defaultCenter] removeObserver:self];
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
- (CGSize)intrinsicContentSize
|
|
105
|
+
{
|
|
106
|
+
return CGSizeMake(self.bounds.size.width, _keyboardState == KeyboardStateWillShow || _keyboardState == KeyboardStateWillHide ? 0 : _height);
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
- (void)setHeight:(CGFloat)height
|
|
110
|
+
{
|
|
111
|
+
_height = height;
|
|
112
|
+
|
|
113
|
+
[self invalidateIntrinsicContentSize];
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
- (void)_keyboardWillShowNotification:(NSNotification*)notification
|
|
117
|
+
{
|
|
118
|
+
_keyboardState = KeyboardStateWillShow;
|
|
119
|
+
|
|
120
|
+
[self invalidateIntrinsicContentSize];
|
|
121
|
+
|
|
122
|
+
if([_delegate respondsToSelector:@selector(ObservingInputAccessoryViewTempKeyboardWillAppear:keyboardDelta:)])
|
|
123
|
+
{
|
|
124
|
+
[_delegate ObservingInputAccessoryViewTempKeyboardWillAppear:self keyboardDelta:_keyboardHeight - _previousKeyboardHeight];
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
- (void)_keyboardDidShowNotification:(NSNotification*)notification
|
|
129
|
+
{
|
|
130
|
+
_keyboardState = KeyboardStateShown;
|
|
131
|
+
|
|
132
|
+
if (_keyboardHeight > 0) { //prevent triggering observeValueForKeyPath if an external keyboard is in use
|
|
133
|
+
[self invalidateIntrinsicContentSize];
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
- (void)_keyboardWillHideNotification:(NSNotification*)notification
|
|
138
|
+
{
|
|
139
|
+
_keyboardState = KeyboardStateWillHide;
|
|
140
|
+
|
|
141
|
+
[self invalidateIntrinsicContentSize];
|
|
142
|
+
|
|
143
|
+
if([_delegate respondsToSelector:@selector(ObservingInputAccessoryViewTempKeyboardWillDisappear:)])
|
|
144
|
+
{
|
|
145
|
+
[_delegate ObservingInputAccessoryViewTempKeyboardWillDisappear:self];
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
- (void)_keyboardDidHideNotification:(NSNotification*)notification
|
|
150
|
+
{
|
|
151
|
+
_keyboardState = KeyboardStateHidden;
|
|
152
|
+
|
|
153
|
+
[self invalidateIntrinsicContentSize];
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
- (void)_keyboardWillChangeFrameNotification:(NSNotification*)notification
|
|
157
|
+
{
|
|
158
|
+
if(self.window)
|
|
159
|
+
{
|
|
160
|
+
return;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
CGRect endFrame = [notification.userInfo[UIKeyboardFrameEndUserInfoKey] CGRectValue];
|
|
164
|
+
_keyboardHeight = [UIScreen mainScreen].bounds.size.height - endFrame.origin.y;
|
|
165
|
+
|
|
166
|
+
[_delegate ObservingInputAccessoryViewTempDidChangeFrame:self];
|
|
167
|
+
|
|
168
|
+
[self invalidateIntrinsicContentSize];
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
@end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
#import "UIResponder+FirstResponderTemp.h"
|
|
2
|
+
|
|
3
|
+
static __weak id currentFirstResponder;
|
|
4
|
+
|
|
5
|
+
@implementation UIResponder (FirstResponder)
|
|
6
|
+
|
|
7
|
+
+(id)currentFirstResponder {
|
|
8
|
+
currentFirstResponder = nil;
|
|
9
|
+
[[UIApplication sharedApplication] sendAction:@selector(findFirstResponder:) to:nil from:nil forEvent:nil];
|
|
10
|
+
return currentFirstResponder;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
-(void)findFirstResponder:(id)sender {
|
|
14
|
+
currentFirstResponder = self;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
@end
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
#import "SafeAreaManager.h"
|
|
2
|
+
#import <UIKit/UIKit.h>
|
|
3
|
+
#import <objc/runtime.h>
|
|
4
|
+
|
|
5
|
+
static NSString *const UIWindowSafeAreaInsetsDidChangeNotification = @"SafeAreaManager.UIWindowSafeAreaInsetsDidChangeNotification";
|
|
6
|
+
static NSString *const SafeAreaInsetsDidChangeEvent = @"SafeAreaInsetsDidChangeEvent";
|
|
7
|
+
static id (*_swz_safeAreaInsetsDidChange_orig)(id self, SEL _cmd);
|
|
8
|
+
|
|
9
|
+
@interface SafeAreaManager () {
|
|
10
|
+
UIEdgeInsets _cachedSafeAreaInsets;
|
|
11
|
+
}
|
|
12
|
+
@end
|
|
13
|
+
|
|
14
|
+
@implementation SafeAreaManager
|
|
15
|
+
|
|
16
|
+
RCT_EXPORT_MODULE()
|
|
17
|
+
|
|
18
|
+
+ (BOOL)requiresMainQueueSetup
|
|
19
|
+
{
|
|
20
|
+
return YES;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
- (dispatch_queue_t)methodQueue {
|
|
24
|
+
return dispatch_get_main_queue();
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
- (NSArray<NSString *> *)supportedEvents {
|
|
28
|
+
return @[SafeAreaInsetsDidChangeEvent];
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
- (instancetype)init {
|
|
32
|
+
self = [super init];
|
|
33
|
+
if (self) {
|
|
34
|
+
_cachedSafeAreaInsets = [self getCurrentSafeAreaInsets];
|
|
35
|
+
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(windowSafeAreaDidChange) name:UIWindowSafeAreaInsetsDidChangeNotification object:nil];
|
|
36
|
+
[self applySizzles];
|
|
37
|
+
}
|
|
38
|
+
return self;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
-(void)dealloc {
|
|
42
|
+
[[NSNotificationCenter defaultCenter] removeObserver:self];
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
- (void)windowSafeAreaDidChange {
|
|
46
|
+
UIEdgeInsets currentSafeAreaInsets = [self getCurrentSafeAreaInsets];
|
|
47
|
+
if (!UIEdgeInsetsEqualToEdgeInsets(currentSafeAreaInsets, _cachedSafeAreaInsets)) {
|
|
48
|
+
_cachedSafeAreaInsets = currentSafeAreaInsets;
|
|
49
|
+
|
|
50
|
+
NSUInteger listenerCount = [[self valueForKey:@"_listenerCount"] unsignedIntegerValue];
|
|
51
|
+
if (listenerCount > 0) {
|
|
52
|
+
[self sendEventWithName:SafeAreaInsetsDidChangeEvent body:[self getResultDicFromSafeArea:_cachedSafeAreaInsets]];
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
-(UIEdgeInsets)getCurrentSafeAreaInsets {
|
|
58
|
+
UIEdgeInsets safeAreaInsets = UIEdgeInsetsZero;
|
|
59
|
+
#if __IPHONE_OS_VERSION_MAX_ALLOWED > __IPHONE_10_3
|
|
60
|
+
if (@available(iOS 11.0, *)) {
|
|
61
|
+
safeAreaInsets = [UIApplication sharedApplication].keyWindow.safeAreaInsets;
|
|
62
|
+
}
|
|
63
|
+
#endif
|
|
64
|
+
return safeAreaInsets;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
#pragma mark - swizzles
|
|
68
|
+
|
|
69
|
+
- (void)applySizzles {
|
|
70
|
+
#if __IPHONE_OS_VERSION_MAX_ALLOWED > __IPHONE_10_3
|
|
71
|
+
if (@available(iOS 11.0, *)) {
|
|
72
|
+
static dispatch_once_t onceToken;
|
|
73
|
+
dispatch_once(&onceToken, ^{
|
|
74
|
+
Method originalMethod = class_getInstanceMethod([UIWindow class], @selector(safeAreaInsetsDidChange));
|
|
75
|
+
Method replacementMethod = class_getInstanceMethod([SafeAreaManager class], @selector(_swz_safeAreaInsetsDidChange));
|
|
76
|
+
_swz_safeAreaInsetsDidChange_orig = (void*)method_getImplementation(originalMethod);
|
|
77
|
+
method_exchangeImplementations(originalMethod, replacementMethod);
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
#endif
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
- (void)_swz_safeAreaInsetsDidChange {
|
|
84
|
+
_swz_safeAreaInsetsDidChange_orig(self, _cmd);
|
|
85
|
+
[[NSNotificationCenter defaultCenter] postNotificationName:UIWindowSafeAreaInsetsDidChangeNotification object:nil];
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
#pragma mark - helper methods
|
|
89
|
+
|
|
90
|
+
- (NSDictionary*)getResultDicFromSafeArea:(UIEdgeInsets)safeAreaInsets {
|
|
91
|
+
return @{@"top": @(safeAreaInsets.top),
|
|
92
|
+
@"left": @(safeAreaInsets.left),
|
|
93
|
+
@"bottom": @(safeAreaInsets.bottom),
|
|
94
|
+
@"right": @(safeAreaInsets.right)
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
#pragma mark - public API
|
|
99
|
+
|
|
100
|
+
RCT_EXPORT_METHOD(getSafeAreaInsets:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject) {
|
|
101
|
+
UIEdgeInsets safeAreaInsets = [self getCurrentSafeAreaInsets];
|
|
102
|
+
resolve([self getResultDicFromSafeArea:safeAreaInsets]);
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
@end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
#import "SafeAreaSpacerShadowView.h"
|
|
2
|
+
#import "SafeAreaSpacerViewLocalData.h"
|
|
3
|
+
|
|
4
|
+
@implementation SafeAreaSpacerShadowView
|
|
5
|
+
|
|
6
|
+
- (void)setLocalData:(SafeAreaSpacerViewLocalData *)localData
|
|
7
|
+
{
|
|
8
|
+
UIEdgeInsets insets = localData.insets;
|
|
9
|
+
|
|
10
|
+
super.height = (YGValue){insets.bottom + insets.top, YGUnitPoint};
|
|
11
|
+
[self didSetProps:@[@"height"]];
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Removing support for setting height from any outside code
|
|
16
|
+
* to prevent interferring this with local data.
|
|
17
|
+
*/
|
|
18
|
+
- (void)setHeight:(YGValue)height {}
|
|
19
|
+
|
|
20
|
+
@end
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
#import "SafeAreaSpacerView.h"
|
|
2
|
+
#import "SafeAreaSpacerViewLocalData.h"
|
|
3
|
+
#import <React/RCTBridge.h>
|
|
4
|
+
#import <React/RCTUIManager.h>
|
|
5
|
+
|
|
6
|
+
@implementation SafeAreaSpacerView
|
|
7
|
+
{
|
|
8
|
+
__weak RCTBridge *_bridge;
|
|
9
|
+
UIEdgeInsets _currentSafeAreaInsets;
|
|
10
|
+
//these flags are used to prevent an endless cycle of safe area insets update. setting the view height changes it's frame, and in some cases `reactSetFrame` causes more and more updates with varying sizes
|
|
11
|
+
BOOL _ignoreNextInsetUpdate;
|
|
12
|
+
BOOL _insetsWereUpdated;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
- (instancetype)initWithBridge:(RCTBridge *)bridge
|
|
16
|
+
{
|
|
17
|
+
if (self = [super initWithFrame:CGRectZero])
|
|
18
|
+
{
|
|
19
|
+
_bridge = bridge;
|
|
20
|
+
_ignoreNextInsetUpdate = NO;
|
|
21
|
+
_insetsWereUpdated = NO;
|
|
22
|
+
}
|
|
23
|
+
return self;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
- (void)reactSetFrame:(CGRect)frame
|
|
27
|
+
{
|
|
28
|
+
if (self.window != nil && _insetsWereUpdated)
|
|
29
|
+
{
|
|
30
|
+
_ignoreNextInsetUpdate = YES;
|
|
31
|
+
dispatch_async(dispatch_get_main_queue(), ^{
|
|
32
|
+
_ignoreNextInsetUpdate = NO;
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
[super reactSetFrame:frame];
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
#if defined(__IPHONE_OS_VERSION_MAX_ALLOWED) && __IPHONE_OS_VERSION_MAX_ALLOWED >= 110000 /* __IPHONE_11_0 */
|
|
40
|
+
|
|
41
|
+
static BOOL UIEdgeInsetsEqualToEdgeInsetsWithThreshold(UIEdgeInsets insets1, UIEdgeInsets insets2, CGFloat threshold)
|
|
42
|
+
{
|
|
43
|
+
return
|
|
44
|
+
ABS(insets1.left - insets2.left) <= threshold &&
|
|
45
|
+
ABS(insets1.right - insets2.right) <= threshold &&
|
|
46
|
+
ABS(insets1.top - insets2.top) <= threshold &&
|
|
47
|
+
ABS(insets1.bottom - insets2.bottom) <= threshold;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
- (void)safeAreaInsetsDidChange
|
|
51
|
+
{
|
|
52
|
+
if (![self respondsToSelector:@selector(safeAreaInsets)] || _ignoreNextInsetUpdate)
|
|
53
|
+
{
|
|
54
|
+
_ignoreNextInsetUpdate = NO;
|
|
55
|
+
_insetsWereUpdated = NO;
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
UIEdgeInsets safeAreaInsets = self.safeAreaInsets;
|
|
60
|
+
|
|
61
|
+
if (UIEdgeInsetsEqualToEdgeInsetsWithThreshold(safeAreaInsets, _currentSafeAreaInsets, 1.0 / RCTScreenScale()))
|
|
62
|
+
{
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
_currentSafeAreaInsets = safeAreaInsets;
|
|
67
|
+
_insetsWereUpdated = YES;
|
|
68
|
+
|
|
69
|
+
SafeAreaSpacerViewLocalData *localData = [[SafeAreaSpacerViewLocalData alloc] initWithInsets:safeAreaInsets];
|
|
70
|
+
[_bridge.uiManager setLocalData:localData forView:self];
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
#endif
|
|
74
|
+
|
|
75
|
+
@end
|
|
76
|
+
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
#import "SafeAreaSpacerViewManager.h"
|
|
2
|
+
|
|
3
|
+
#import "SafeAreaSpacerShadowView.h"
|
|
4
|
+
#import "SafeAreaSpacerView.h"
|
|
5
|
+
#import <React/RCTUIManager.h>
|
|
6
|
+
|
|
7
|
+
@implementation SafeAreaSpacerViewManager
|
|
8
|
+
|
|
9
|
+
RCT_EXPORT_MODULE()
|
|
10
|
+
|
|
11
|
+
- (dispatch_queue_t)methodQueue
|
|
12
|
+
{
|
|
13
|
+
return dispatch_get_main_queue();
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
- (UIView *)view
|
|
17
|
+
{
|
|
18
|
+
return [[SafeAreaSpacerView alloc] initWithBridge:self.bridge];
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
- (SafeAreaSpacerShadowView *)shadowView
|
|
22
|
+
{
|
|
23
|
+
return [SafeAreaSpacerShadowView new];
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
@end
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import type {ViewProps} from 'react-native';
|
|
2
|
+
// import {requireNativeComponent, type ViewProps} from 'react-native';
|
|
3
|
+
import type {Float, Int32, WithDefault} from 'react-native/Libraries/Types/CodegenTypes';
|
|
4
|
+
import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
|
|
5
|
+
|
|
6
|
+
export interface HighlightFrame {
|
|
7
|
+
x: Float;
|
|
8
|
+
y: Float;
|
|
9
|
+
width: Float;
|
|
10
|
+
height: Float;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export interface MinimumRectSize {
|
|
14
|
+
width: Float;
|
|
15
|
+
height: Float;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export interface HighlightViewTagParams {
|
|
19
|
+
paddingLeft?: WithDefault<Float, 0>;
|
|
20
|
+
paddingTop?: WithDefault<Float, 0>;
|
|
21
|
+
paddingRight?: WithDefault<Float, 0>;
|
|
22
|
+
paddingBottom?: WithDefault<Float, 0>;
|
|
23
|
+
offsetX?: WithDefault<Float, 0>;
|
|
24
|
+
offsetY?: WithDefault<Float, 0>;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export interface NativeProps extends ViewProps {
|
|
28
|
+
/**
|
|
29
|
+
* The frame to highlight with x, y, width, height coordinates
|
|
30
|
+
*/
|
|
31
|
+
highlightFrame?: HighlightFrame;
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* The overlay color (processed color int for Android)
|
|
35
|
+
*/
|
|
36
|
+
overlayColor?: WithDefault<Int32, 0>;
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* The border radius for the highlighted area
|
|
40
|
+
*/
|
|
41
|
+
borderRadius?: WithDefault<Float, 0>;
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* The stroke color (processed color int for Android)
|
|
45
|
+
*/
|
|
46
|
+
strokeColor?: WithDefault<Int32, 0>;
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* The stroke width
|
|
50
|
+
*/
|
|
51
|
+
strokeWidth?: WithDefault<Float, 0>;
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* The React tag of the view to highlight
|
|
55
|
+
*/
|
|
56
|
+
highlightViewTag?: Int32;
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Parameters for view-based highlighting including padding and offset
|
|
60
|
+
*/
|
|
61
|
+
highlightViewTagParams?: HighlightViewTagParams;
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Minimum rectangle size for the highlight area
|
|
65
|
+
*/
|
|
66
|
+
minimumRectSize?: MinimumRectSize;
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Inner padding for the highlight area
|
|
70
|
+
*/
|
|
71
|
+
innerPadding?: WithDefault<Float, 0>;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
export default codegenNativeComponent<NativeProps>('HighlighterView');
|
|
75
|
+
|
|
76
|
+
// const HighlighterViewNativeComponent = requireNativeComponent<NativeProps>('HighlighterView');
|
|
77
|
+
|
|
78
|
+
// export default HighlighterViewNativeComponent;
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import type {ViewProps} from 'react-native';
|
|
2
|
+
// import {requireNativeComponent, type ViewProps} from 'react-native';
|
|
3
|
+
import type {Int32, WithDefault} from 'react-native/Libraries/Types/CodegenTypes';
|
|
4
|
+
import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
|
|
5
|
+
|
|
6
|
+
export interface NativeProps extends ViewProps {
|
|
7
|
+
/**
|
|
8
|
+
* Enables tracking of the keyboard when it's dismissed interactively (false by default).
|
|
9
|
+
*/
|
|
10
|
+
trackInteractive?: WithDefault<boolean, false>;
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* iOS only.
|
|
14
|
+
* Show the keyboard on a negative scroll
|
|
15
|
+
*/
|
|
16
|
+
revealKeyboardInteractive?: WithDefault<boolean, false>;
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* iOS only.
|
|
20
|
+
* Set to false to turn off inset management and manage it yourself
|
|
21
|
+
*/
|
|
22
|
+
manageScrollView?: WithDefault<boolean, true>;
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* iOS only.
|
|
26
|
+
* Set to true manageScrollView is set to true and still does not work
|
|
27
|
+
*/
|
|
28
|
+
requiresSameParentToManageScrollView?: WithDefault<boolean, false>;
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* iOS only.
|
|
32
|
+
* Allow hitting sub-views that are placed beyond the view bounds
|
|
33
|
+
*/
|
|
34
|
+
allowHitsOutsideBounds?: WithDefault<boolean, false>;
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Should the scrollView scroll to the focused input
|
|
38
|
+
*/
|
|
39
|
+
scrollToFocusedInput?: WithDefault<boolean, false>;
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* iOS only.
|
|
43
|
+
* The scrolling behavior (NONE | SCROLL_TO_BOTTOM_INVERTED_ONLY | FIXED_OFFSET)
|
|
44
|
+
*/
|
|
45
|
+
scrollBehavior?: WithDefault<Int32, 0>;
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* iOS only.
|
|
49
|
+
* Add a SafeArea view beneath the KeyboardAccessoryView
|
|
50
|
+
*/
|
|
51
|
+
addBottomView?: WithDefault<boolean, false>;
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* iOS only.
|
|
55
|
+
* The bottom view's color
|
|
56
|
+
*/
|
|
57
|
+
bottomViewColor?: string;
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* Allow control safe area
|
|
61
|
+
*/
|
|
62
|
+
useSafeArea?: WithDefault<boolean, false>;
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* Whether or not to include bottom tab bar inset
|
|
66
|
+
*/
|
|
67
|
+
usesBottomTabs?: WithDefault<boolean, false>;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
export default codegenNativeComponent<NativeProps>('KeyboardTrackingViewTemp');
|
|
71
|
+
|
|
72
|
+
// const KeyboardTrackingViewNativeComponent = requireNativeComponent<NativeProps>('KeyboardTrackingViewTemp');
|
|
73
|
+
|
|
74
|
+
// export default KeyboardTrackingViewNativeComponent;
|