@bigbinary/neetoui-rn 0.0.241 → 0.0.243

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/index.d.ts CHANGED
@@ -207,6 +207,8 @@ interface BottomSheetProps extends ViewProps {
207
207
  noResultsLabelStyle?: TextProps;
208
208
  noResultsLabel?: string;
209
209
  NoResultsComponent?: () => React.ReactNode;
210
+ shouldHideKeyboardOnScrollBegin?: boolean;
211
+ shouldShowItemSeparator?: boolean;
210
212
  }
211
213
 
212
214
  interface ButtonProps extends TouchableProps {
@@ -461,6 +463,15 @@ interface RadioButtonProps extends TouchableProps {
461
463
  labelStyle?: TextProps;
462
464
  }
463
465
 
466
+ interface SelectButtonProps extends TouchableProps {
467
+ selected: boolean;
468
+ onSelect: () => void;
469
+ disabled?: boolean;
470
+ label?: string;
471
+ selectIconStyle?: { size: number; color: typeof theme.colors.font; name: string };
472
+ labelStyle?: TextProps;
473
+ }
474
+
464
475
  type RichTextEditorProps = {
465
476
  onChange: (val: string) => void;
466
477
  placeholderText?: string;
@@ -579,6 +590,7 @@ export const ScrollView: React.FC<ScrollViewProps>;
579
590
  export const SearchBar: React.FC<SearchBarProps>;
580
591
  export const SegmentedTopBar: React.FC<SegmentedTopBarProps>;
581
592
  export const Select: React.FC<SelectProps>;
593
+ export const SelectButton: React.FC<SelectButtonProps>;
582
594
  export const SocialButton: React.FC<SocialButtonProps>;
583
595
  export const Toast: React.FC<ToastProps> & {
584
596
  show?: (params: ToastShowParams) => void;
@@ -1 +1 @@
1
- var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.BottomSheet=void 0;var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _objectWithoutProperties2=_interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _react=_interopRequireWildcard(require("react"));var _reactNative=require("react-native");var _propTypes=_interopRequireDefault(require("prop-types"));var _reactNativeModal=_interopRequireDefault(require("react-native-modal"));var _reactNativeSafeAreaContext=require("react-native-safe-area-context");var _reactNativeSizeMatters=require("react-native-size-matters");var _=require("./");var _theme=require("../theme");var _excluded=["showCreateOption","CreateItemComponent","showCreateOptionLoader","createSearchedOptionLabelStyle","createOptionLabel","onPressCreateOption","createSearchedOptionContainerStyle","data","title","hide","isVisible","onItemPress","bg","children","titleContainerStyle","titleTextStyle","modalParams","HeaderComponent","ContentRow","contentType","canSearch","onDonePress","disabled","noResultsLabelContainerStyle","noResultsLabelStyle","noResultsLabel","NoResultsComponent","labelExtractor","valueExtractor","selectedItem","onBackdropPress","searchBarProps"];var _this=this,_jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/BottomSheet.jsx";function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj.default=obj;if(cache){cache.set(obj,newObj);}return newObj;}var Title=function Title(_ref){var title=_ref.title,bg=_ref.bg,isVisible=_ref.isVisible,hide=_ref.hide,titleContainerStyle=_ref.titleContainerStyle,titleTextStyle=_ref.titleTextStyle,contentType=_ref.contentType,canSearch=_ref.canSearch,setSearchText=_ref.setSearchText,onDonePress=_ref.onDonePress,searchBarProps=_ref.searchBarProps;var touchY;(0,_react.useEffect)(function(){setSearchText("");},[isVisible,setSearchText]);return _react.default.createElement(_.Container,(0,_extends2.default)({bg:bg,borderRadius:(0,_reactNativeSizeMatters.moderateScale)(20),pb:(0,_reactNativeSizeMatters.moderateScale)(12),onTouchStart:function onTouchStart(e){return touchY=e.nativeEvent.pageY;},onTouchEnd:function onTouchEnd(e){if(e.nativeEvent.pageY-touchY>20)hide();}},titleContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:39,columnNumber:5}}),_react.default.createElement(_.Container,{flexDirection:"row",justifyContent:"space-between",mb:(0,_reactNativeSizeMatters.moderateScale)(16),__self:_this,__source:{fileName:_jsxFileName,lineNumber:50,columnNumber:7}},title&&_react.default.createElement(_.Typography,(0,_extends2.default)({textStyle:"modalHeader"},titleTextStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:56,columnNumber:11}}),title),contentType&&_react.default.createElement(_.Touchable,{onPress:function onPress(){hide();onDonePress();},__self:_this,__source:{fileName:_jsxFileName,lineNumber:61,columnNumber:11}},_react.default.createElement(_.Typography,{color:"font.purple500",textStyle:"modalHeader",__self:_this,__source:{fileName:_jsxFileName,lineNumber:67,columnNumber:13}},"Done"))),canSearch&&_react.default.createElement(_.SearchBar,(0,_extends2.default)({debounceDelay:200,placeholder:"Search",showCancelButton:false,onChangeText:setSearchText,onCancel:function onCancel(){setSearchText("");}},searchBarProps,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:74,columnNumber:9}})));};Title.propTypes={title:_propTypes.default.string,isVisible:_propTypes.default.bool,hide:_propTypes.default.func,bg:_propTypes.default.string,titleContainerStyle:_propTypes.default.object,titleTextStyle:_propTypes.default.object,contentType:_propTypes.default.oneOf(["checkbox",null]),canSearch:_propTypes.default.bool,setSearchText:_propTypes.default.func,onDonePress:_propTypes.default.func,searchBarProps:_propTypes.default.object};var BottomSheet=function BottomSheet(_ref2){var showCreateOption=_ref2.showCreateOption,CreateItemComponent=_ref2.CreateItemComponent,showCreateOptionLoader=_ref2.showCreateOptionLoader,createSearchedOptionLabelStyle=_ref2.createSearchedOptionLabelStyle,createOptionLabel=_ref2.createOptionLabel,onPressCreateOption=_ref2.onPressCreateOption,createSearchedOptionContainerStyle=_ref2.createSearchedOptionContainerStyle,_ref2$data=_ref2.data,data=_ref2$data===void 0?[]:_ref2$data,title=_ref2.title,hide=_ref2.hide,isVisible=_ref2.isVisible,onItemPress=_ref2.onItemPress,bg=_ref2.bg,children=_ref2.children,titleContainerStyle=_ref2.titleContainerStyle,titleTextStyle=_ref2.titleTextStyle,modalParams=_ref2.modalParams,HeaderComponent=_ref2.HeaderComponent,ContentRow=_ref2.ContentRow,contentType=_ref2.contentType,canSearch=_ref2.canSearch,onDonePress=_ref2.onDonePress,disabled=_ref2.disabled,noResultsLabelContainerStyle=_ref2.noResultsLabelContainerStyle,noResultsLabelStyle=_ref2.noResultsLabelStyle,noResultsLabel=_ref2.noResultsLabel,NoResultsComponent=_ref2.NoResultsComponent,labelExtractor=_ref2.labelExtractor,valueExtractor=_ref2.valueExtractor,selectedItem=_ref2.selectedItem,_onBackdropPress=_ref2.onBackdropPress,searchBarProps=_ref2.searchBarProps,rest=(0,_objectWithoutProperties2.default)(_ref2,_excluded);var _useState=(0,_react.useState)(""),_useState2=(0,_slicedToArray2.default)(_useState,2),searchText=_useState2[0],setSearchText=_useState2[1];var getLabel=function getLabel(item,index){return(item==null?void 0:item.label)||labelExtractor(item,index)||item;};var generateData=function generateData(){if(searchText.length){return data.filter(function(item){return getLabel(item).toLowerCase().includes(searchText.toLowerCase());});}return data;};var hideCreateComponent=function hideCreateComponent(){var filteredItemCount=generateData().filter(function(data){return getLabel(data).toLocaleLowerCase()===searchText.toLocaleLowerCase();}).length;return filteredItemCount>0;};var checkIsSelected=function checkIsSelected(item){var itemValue=(item==null?void 0:item.value)||valueExtractor(item)||item;var selectedItemValue=(selectedItem==null?void 0:selectedItem.value)||valueExtractor(selectedItem)||selectedItem;return itemValue===selectedItemValue;};return _react.default.createElement(_reactNativeModal.default,(0,_extends2.default)({avoidKeyboard:true,hideModalContentWhileAnimating:true,useNativeDriver:true,isVisible:isVisible,style:styles.modalStyle,onRequestClose:hide,onBackdropPress:function onBackdropPress(){_onBackdropPress();hide();}},modalParams,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:212,columnNumber:5}}),_react.default.createElement(_reactNativeSafeAreaContext.SafeAreaView,{style:styles.safeAreaView,__self:_this,__source:{fileName:_jsxFileName,lineNumber:225,columnNumber:7}},_react.default.createElement(_.Container,(0,_extends2.default)({bg:bg,borderTopLeftRadius:(0,_reactNativeSizeMatters.moderateScale)(20),borderTopRightRadius:(0,_reactNativeSizeMatters.moderateScale)(20),flexShrink:1,p:(0,_reactNativeSizeMatters.moderateScale)(16)},rest,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:226,columnNumber:9}}),title&&_react.default.createElement(Title,{HeaderComponent:HeaderComponent,bg:bg,canSearch:canSearch,contentType:contentType,hide:hide,isVisible:isVisible,searchBarProps:searchBarProps,searchText:searchText,setSearchText:setSearchText,title:title,titleContainerStyle:titleContainerStyle,titleTextStyle:titleTextStyle,onDonePress:onDonePress,__self:_this,__source:{fileName:_jsxFileName,lineNumber:235,columnNumber:13}}),data&&_react.default.createElement(_reactNative.FlatList,{data:generateData(),initialNumToRender:data.length,keyExtractor:function keyExtractor(_item,index){return index;},ListFooterComponent:_react.default.createElement(_.Container,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:257,columnNumber:17}},children,!!searchText&&!generateData().length&&!showCreateOption&&(NoResultsComponent?_react.default.createElement(NoResultsComponent,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:263,columnNumber:23}}):_react.default.createElement(_.Container,(0,_extends2.default)({alignItems:"center",mb:(0,_reactNativeSizeMatters.moderateScale)(2),py:(0,_reactNativeSizeMatters.moderateScale)(2)},noResultsLabelContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:265,columnNumber:23}}),_react.default.createElement(_.Typography,(0,_extends2.default)({color:"font.grey",fontFamily:"sf600",fontSize:"s"},noResultsLabelStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:271,columnNumber:25}}),noResultsLabel||"No options found"))),!disabled&&!hideCreateComponent()&&(showCreateOptionLoader?_react.default.createElement(_.Loader,{color:_theme.theme.colors.background.base,__self:_this,__source:{fileName:_jsxFileName,lineNumber:284,columnNumber:23}}):!!searchText&&showCreateOption&&_react.default.createElement(_.Container,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:288,columnNumber:25}},CreateItemComponent?_react.default.createElement(CreateItemComponent,{searchText:searchText,__self:_this,__source:{fileName:_jsxFileName,lineNumber:290,columnNumber:29}}):_react.default.createElement(_.Touchable,(0,_extends2.default)({alignItems:"center",height:(0,_reactNativeSizeMatters.moderateScale)(40),justifyContent:"center",onPress:function onPress(){return onPressCreateOption(searchText);}},createSearchedOptionContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:292,columnNumber:29}}),_react.default.createElement(_.Typography,(0,_extends2.default)({color:"font.grey",fontFamily:"sf400",fontSize:"s"},createSearchedOptionLabelStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:299,columnNumber:31}}),createOptionLabel||"Create "+searchText+" option"))))),renderItem:function renderItem(_ref3){var item=_ref3.item,index=_ref3.index;return _react.default.createElement(ContentRow,{index:index,isSelected:checkIsSelected(item),item:item,key:index,onPress:function onPress(){!contentType&&hide();onItemPress({index:index,item:item});},__self:_this,__source:{fileName:_jsxFileName,lineNumber:316,columnNumber:17}});},onScrollBeginDrag:_reactNative.Keyboard.dismiss,__self:_this,__source:{fileName:_jsxFileName,lineNumber:252,columnNumber:13}}))));};exports.BottomSheet=BottomSheet;BottomSheet.defaultProps={bg:"background.primary",showCreateOption:false,showCreateOptionLoader:false,createOptionLabel:null,onPressCreateOption:function onPressCreateOption(){},CreateItemComponent:null,onDonePress:function onDonePress(){},valueExtractor:function valueExtractor(){},labelExtractor:function labelExtractor(){},onBackdropPress:function onBackdropPress(){},searchBarProps:{}};BottomSheet.propTypes={data:_propTypes.default.array,title:_propTypes.default.string,isVisible:_propTypes.default.bool,hide:_propTypes.default.func,onItemPress:_propTypes.default.func,onDonePress:_propTypes.default.func,bg:_propTypes.default.string,titleContainerStyle:_propTypes.default.object,titleTextStyle:_propTypes.default.object,showCreateOption:_propTypes.default.bool,showCreateOptionLoader:_propTypes.default.bool,createOptionLabel:_propTypes.default.string,onPressCreateOption:_propTypes.default.func,CreateItemComponent:_propTypes.default.func,createSearchedOptionLabelStyle:_propTypes.default.object,disabled:_propTypes.default.bool,createSearchedOptionContainerStyle:_propTypes.default.object,noResultsLabelContainerStyle:_propTypes.default.object,noResultsLabelStyle:_propTypes.default.object,noResultsLabel:_propTypes.default.string,NoResultsComponent:_propTypes.default.node,labelExtractor:_propTypes.default.func,valueExtractor:_propTypes.default.func,onBackdropPress:_propTypes.default.func,selectedItem:_propTypes.default.oneOfType([_propTypes.default.object,_propTypes.default.string]),searchBarProps:_propTypes.default.object,modalParams:_propTypes.default.object,children:_propTypes.default.node,HeaderComponent:_propTypes.default.elementType,ContentRow:_propTypes.default.elementType,contentType:_propTypes.default.oneOf(["checkbox",null]),canSearch:_propTypes.default.bool};var styles=_reactNative.StyleSheet.create({safeAreaView:{maxHeight:"70%",backgroundColor:_theme.theme.colors.background.primary,borderTopRightRadius:(0,_reactNativeSizeMatters.moderateScale)(20),borderTopLeftRadius:(0,_reactNativeSizeMatters.moderateScale)(20)},modalStyle:{margin:0,justifyContent:"flex-end",flex:1},inputContainerStyle:{backgroundColor:"white",borderRadius:(0,_reactNativeSizeMatters.moderateScale)(10)}});
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.BottomSheet=void 0;var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _objectWithoutProperties2=_interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _react=_interopRequireWildcard(require("react"));var _reactNative=require("react-native");var _propTypes=_interopRequireDefault(require("prop-types"));var _reactNativeModal=_interopRequireDefault(require("react-native-modal"));var _reactNativeSafeAreaContext=require("react-native-safe-area-context");var _reactNativeSizeMatters=require("react-native-size-matters");var _=require("./");var _Divider=require("./Divider");var _theme=require("../theme");var _excluded=["showCreateOption","CreateItemComponent","showCreateOptionLoader","createSearchedOptionLabelStyle","createOptionLabel","onPressCreateOption","createSearchedOptionContainerStyle","data","title","hide","isVisible","onItemPress","bg","children","titleContainerStyle","titleTextStyle","modalParams","HeaderComponent","ContentRow","contentType","canSearch","onDonePress","disabled","noResultsLabelContainerStyle","noResultsLabelStyle","noResultsLabel","NoResultsComponent","labelExtractor","valueExtractor","selectedItem","onBackdropPress","searchBarProps","shouldHideKeyboardOnScrollBegin","shouldShowItemSeparator"];var _this=this,_jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/BottomSheet.jsx";function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj.default=obj;if(cache){cache.set(obj,newObj);}return newObj;}var Title=function Title(_ref){var title=_ref.title,bg=_ref.bg,isVisible=_ref.isVisible,hide=_ref.hide,titleContainerStyle=_ref.titleContainerStyle,titleTextStyle=_ref.titleTextStyle,contentType=_ref.contentType,canSearch=_ref.canSearch,setSearchText=_ref.setSearchText,onDonePress=_ref.onDonePress,searchBarProps=_ref.searchBarProps;var touchY;(0,_react.useEffect)(function(){setSearchText("");},[isVisible,setSearchText]);return _react.default.createElement(_.Container,(0,_extends2.default)({bg:bg,borderRadius:(0,_reactNativeSizeMatters.moderateScale)(20),pb:(0,_reactNativeSizeMatters.moderateScale)(12),onTouchStart:function onTouchStart(e){return touchY=e.nativeEvent.pageY;},onTouchEnd:function onTouchEnd(e){if(e.nativeEvent.pageY-touchY>20)hide();}},titleContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:41,columnNumber:5}}),_react.default.createElement(_.Container,{flexDirection:"row",justifyContent:"space-between",mb:(0,_reactNativeSizeMatters.moderateScale)(16),__self:_this,__source:{fileName:_jsxFileName,lineNumber:52,columnNumber:7}},title&&_react.default.createElement(_.Typography,(0,_extends2.default)({textStyle:"modalHeader"},titleTextStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:58,columnNumber:11}}),title),contentType&&_react.default.createElement(_.Touchable,{onPress:function onPress(){hide();onDonePress();},__self:_this,__source:{fileName:_jsxFileName,lineNumber:63,columnNumber:11}},_react.default.createElement(_.Typography,{color:"font.purple500",textStyle:"modalHeader",__self:_this,__source:{fileName:_jsxFileName,lineNumber:69,columnNumber:13}},"Done"))),canSearch&&_react.default.createElement(_.SearchBar,(0,_extends2.default)({debounceDelay:200,placeholder:"Search",showCancelButton:false,onChangeText:setSearchText,onCancel:function onCancel(){setSearchText("");}},searchBarProps,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:76,columnNumber:9}})));};Title.propTypes={title:_propTypes.default.string,isVisible:_propTypes.default.bool,hide:_propTypes.default.func,bg:_propTypes.default.string,titleContainerStyle:_propTypes.default.object,titleTextStyle:_propTypes.default.object,contentType:_propTypes.default.oneOf(["checkbox",null]),canSearch:_propTypes.default.bool,setSearchText:_propTypes.default.func,onDonePress:_propTypes.default.func,searchBarProps:_propTypes.default.object};var BottomSheet=function BottomSheet(_ref2){var showCreateOption=_ref2.showCreateOption,CreateItemComponent=_ref2.CreateItemComponent,showCreateOptionLoader=_ref2.showCreateOptionLoader,createSearchedOptionLabelStyle=_ref2.createSearchedOptionLabelStyle,createOptionLabel=_ref2.createOptionLabel,onPressCreateOption=_ref2.onPressCreateOption,createSearchedOptionContainerStyle=_ref2.createSearchedOptionContainerStyle,_ref2$data=_ref2.data,data=_ref2$data===void 0?[]:_ref2$data,title=_ref2.title,hide=_ref2.hide,isVisible=_ref2.isVisible,onItemPress=_ref2.onItemPress,bg=_ref2.bg,children=_ref2.children,titleContainerStyle=_ref2.titleContainerStyle,titleTextStyle=_ref2.titleTextStyle,modalParams=_ref2.modalParams,HeaderComponent=_ref2.HeaderComponent,ContentRow=_ref2.ContentRow,contentType=_ref2.contentType,canSearch=_ref2.canSearch,onDonePress=_ref2.onDonePress,disabled=_ref2.disabled,noResultsLabelContainerStyle=_ref2.noResultsLabelContainerStyle,noResultsLabelStyle=_ref2.noResultsLabelStyle,noResultsLabel=_ref2.noResultsLabel,NoResultsComponent=_ref2.NoResultsComponent,labelExtractor=_ref2.labelExtractor,valueExtractor=_ref2.valueExtractor,selectedItem=_ref2.selectedItem,_onBackdropPress=_ref2.onBackdropPress,searchBarProps=_ref2.searchBarProps,_ref2$shouldHideKeybo=_ref2.shouldHideKeyboardOnScrollBegin,shouldHideKeyboardOnScrollBegin=_ref2$shouldHideKeybo===void 0?true:_ref2$shouldHideKeybo,_ref2$shouldShowItemS=_ref2.shouldShowItemSeparator,shouldShowItemSeparator=_ref2$shouldShowItemS===void 0?false:_ref2$shouldShowItemS,rest=(0,_objectWithoutProperties2.default)(_ref2,_excluded);var _useState=(0,_react.useState)(""),_useState2=(0,_slicedToArray2.default)(_useState,2),searchText=_useState2[0],setSearchText=_useState2[1];var getLabel=function getLabel(item,index){return(item==null?void 0:item.label)||labelExtractor(item,index)||item;};var generateData=function generateData(){if(searchText.length){return data.filter(function(item){return getLabel(item).toLowerCase().includes(searchText.toLowerCase());});}return data;};var hideCreateComponent=function hideCreateComponent(){var filteredItemCount=generateData().filter(function(data){return getLabel(data).toLocaleLowerCase()===searchText.toLocaleLowerCase();}).length;return filteredItemCount>0;};var checkIsSelected=function checkIsSelected(item){var itemValue=(item==null?void 0:item.value)||valueExtractor(item)||item;var selectedItemValue=(selectedItem==null?void 0:selectedItem.value)||valueExtractor(selectedItem)||selectedItem;return itemValue===selectedItemValue;};return _react.default.createElement(_reactNativeModal.default,(0,_extends2.default)({avoidKeyboard:true,hideModalContentWhileAnimating:true,useNativeDriver:true,isVisible:isVisible,style:styles.modalStyle,onRequestClose:hide,onBackdropPress:function onBackdropPress(){_onBackdropPress();hide();}},modalParams,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:216,columnNumber:5}}),_react.default.createElement(_reactNativeSafeAreaContext.SafeAreaView,{style:styles.safeAreaView,__self:_this,__source:{fileName:_jsxFileName,lineNumber:229,columnNumber:7}},_react.default.createElement(_.Container,(0,_extends2.default)({bg:bg,borderTopLeftRadius:(0,_reactNativeSizeMatters.moderateScale)(20),borderTopRightRadius:(0,_reactNativeSizeMatters.moderateScale)(20),flexShrink:1,p:(0,_reactNativeSizeMatters.moderateScale)(16)},rest,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:230,columnNumber:9}}),title&&_react.default.createElement(Title,{HeaderComponent:HeaderComponent,bg:bg,canSearch:canSearch,contentType:contentType,hide:hide,isVisible:isVisible,searchBarProps:searchBarProps,searchText:searchText,setSearchText:setSearchText,title:title,titleContainerStyle:titleContainerStyle,titleTextStyle:titleTextStyle,onDonePress:onDonePress,__self:_this,__source:{fileName:_jsxFileName,lineNumber:239,columnNumber:13}}),data&&_react.default.createElement(_reactNative.FlatList,{data:generateData(),initialNumToRender:data.length,keyExtractor:function keyExtractor(_item,index){return index;},keyboardShouldPersistTaps:"handled",ItemSeparatorComponent:shouldShowItemSeparator?_react.default.createElement(_Divider.Divider,{bg:"background.grey200",__self:_this,__source:{fileName:_jsxFileName,lineNumber:263,columnNumber:19}}):null,ListFooterComponent:_react.default.createElement(_.Container,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:267,columnNumber:17}},children,!!searchText&&!generateData().length&&!showCreateOption&&(NoResultsComponent?_react.default.createElement(NoResultsComponent,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:273,columnNumber:23}}):_react.default.createElement(_.Container,(0,_extends2.default)({alignItems:"center",mb:(0,_reactNativeSizeMatters.moderateScale)(2),py:(0,_reactNativeSizeMatters.moderateScale)(2)},noResultsLabelContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:275,columnNumber:23}}),_react.default.createElement(_.Typography,(0,_extends2.default)({color:"font.grey",fontFamily:"sf600",fontSize:"s"},noResultsLabelStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:281,columnNumber:25}}),noResultsLabel||"No options found"))),!disabled&&!hideCreateComponent()&&(showCreateOptionLoader?_react.default.createElement(_.Loader,{color:_theme.theme.colors.background.base,__self:_this,__source:{fileName:_jsxFileName,lineNumber:294,columnNumber:23}}):!!searchText&&showCreateOption&&_react.default.createElement(_.Container,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:298,columnNumber:25}},CreateItemComponent?_react.default.createElement(CreateItemComponent,{searchText:searchText,__self:_this,__source:{fileName:_jsxFileName,lineNumber:300,columnNumber:29}}):_react.default.createElement(_.Touchable,(0,_extends2.default)({alignItems:"center",height:(0,_reactNativeSizeMatters.moderateScale)(40),justifyContent:"center",onPress:function onPress(){return onPressCreateOption(searchText);}},createSearchedOptionContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:302,columnNumber:29}}),_react.default.createElement(_.Typography,(0,_extends2.default)({color:"font.grey",fontFamily:"sf400",fontSize:"s"},createSearchedOptionLabelStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:309,columnNumber:31}}),createOptionLabel||"Create "+searchText+" option"))))),renderItem:function renderItem(_ref3){var item=_ref3.item,index=_ref3.index;return _react.default.createElement(ContentRow,{index:index,isSelected:checkIsSelected(item),item:item,key:index,onPress:function onPress(){!contentType&&hide();onItemPress({index:index,item:item});},__self:_this,__source:{fileName:_jsxFileName,lineNumber:326,columnNumber:17}});},onScrollBeginDrag:shouldHideKeyboardOnScrollBegin&&_reactNative.Keyboard.dismiss,__self:_this,__source:{fileName:_jsxFileName,lineNumber:256,columnNumber:13}}))));};exports.BottomSheet=BottomSheet;BottomSheet.defaultProps={bg:"background.primary",showCreateOption:false,showCreateOptionLoader:false,createOptionLabel:null,onPressCreateOption:function onPressCreateOption(){},CreateItemComponent:null,onDonePress:function onDonePress(){},valueExtractor:function valueExtractor(){},labelExtractor:function labelExtractor(){},onBackdropPress:function onBackdropPress(){},searchBarProps:{}};BottomSheet.propTypes={data:_propTypes.default.array,title:_propTypes.default.string,isVisible:_propTypes.default.bool,hide:_propTypes.default.func,onItemPress:_propTypes.default.func,onDonePress:_propTypes.default.func,bg:_propTypes.default.string,titleContainerStyle:_propTypes.default.object,titleTextStyle:_propTypes.default.object,showCreateOption:_propTypes.default.bool,showCreateOptionLoader:_propTypes.default.bool,createOptionLabel:_propTypes.default.string,onPressCreateOption:_propTypes.default.func,CreateItemComponent:_propTypes.default.func,createSearchedOptionLabelStyle:_propTypes.default.object,disabled:_propTypes.default.bool,createSearchedOptionContainerStyle:_propTypes.default.object,noResultsLabelContainerStyle:_propTypes.default.object,noResultsLabelStyle:_propTypes.default.object,noResultsLabel:_propTypes.default.string,NoResultsComponent:_propTypes.default.node,labelExtractor:_propTypes.default.func,valueExtractor:_propTypes.default.func,onBackdropPress:_propTypes.default.func,selectedItem:_propTypes.default.oneOfType([_propTypes.default.object,_propTypes.default.string]),searchBarProps:_propTypes.default.object,modalParams:_propTypes.default.object,children:_propTypes.default.node,HeaderComponent:_propTypes.default.elementType,ContentRow:_propTypes.default.elementType,contentType:_propTypes.default.oneOf(["checkbox",null]),canSearch:_propTypes.default.bool,shouldHideKeyboardOnScrollBegin:_propTypes.default.bool,shouldShowItemSeparator:_propTypes.default.bool};var styles=_reactNative.StyleSheet.create({safeAreaView:{maxHeight:"70%",backgroundColor:_theme.theme.colors.background.primary,borderTopRightRadius:(0,_reactNativeSizeMatters.moderateScale)(20),borderTopLeftRadius:(0,_reactNativeSizeMatters.moderateScale)(20)},modalStyle:{margin:0,justifyContent:"flex-end",flex:1},inputContainerStyle:{backgroundColor:"white",borderRadius:(0,_reactNativeSizeMatters.moderateScale)(10)}});
@@ -1 +1 @@
1
- var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.ScrollView=void 0;var _taggedTemplateLiteralLoose2=_interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));var _native=_interopRequireDefault(require("styled-components/native"));var _styledSystem=require("styled-system");var _templateObject;var ScrollView=_native.default.ScrollView(_templateObject||(_templateObject=(0,_taggedTemplateLiteralLoose2.default)(["\n ","\n ","\n ","\n ","\n ","\n"])),_styledSystem.flexbox,_styledSystem.space,_styledSystem.border,_styledSystem.color,_styledSystem.layout);exports.ScrollView=ScrollView;
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.ScrollView=void 0;var _taggedTemplateLiteralLoose2=_interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));var _native=_interopRequireDefault(require("styled-components/native"));var _styledSystem=require("styled-system");var _templateObject;var ScrollView=_native.default.ScrollView.attrs(function(){return{keyboardShouldPersistTaps:"handled",showsVerticalScrollIndicator:false,contentContainerStyle:{flex:1}};})(_templateObject||(_templateObject=(0,_taggedTemplateLiteralLoose2.default)(["\n ","\n ","\n ","\n ","\n ","\n"])),_styledSystem.flexbox,_styledSystem.space,_styledSystem.border,_styledSystem.color,_styledSystem.layout);exports.ScrollView=ScrollView;
@@ -0,0 +1 @@
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.SelectButton=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _objectWithoutProperties2=_interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));var _react=_interopRequireWildcard(require("react"));var _propTypes=_interopRequireDefault(require("prop-types"));var _reactNativeRemixIcon=_interopRequireDefault(require("react-native-remix-icon"));var _reactNativeSizeMatters=require("react-native-size-matters");var _native=require("styled-components/native");var _=require("./");var _excluded=["selected","onSelect","disabled","label","selectIconStyle","labelStyle"];var _this=this,_jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/SelectButton.jsx";function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj.default=obj;if(cache){cache.set(obj,newObj);}return newObj;}var SelectButton=function SelectButton(_ref){var selected=_ref.selected,onSelect=_ref.onSelect,disabled=_ref.disabled,label=_ref.label,selectIconStyle=_ref.selectIconStyle,labelStyle=_ref.labelStyle,rest=(0,_objectWithoutProperties2.default)(_ref,_excluded);var theme=(0,_react.useContext)(_native.ThemeContext);var disabledProps={labelProps:{opacity:0.5}};var selectedProps={labelProps:{fontFamily:theme.fonts.sf700}};var unselectedProps={labelProps:{fontFamily:theme.fonts.sf400}};return _react.default.createElement(_.Touchable,(0,_extends2.default)({alignItems:"center",disabled:disabled,flexDirection:"row",py:(0,_reactNativeSizeMatters.moderateScale)(8),onPress:onSelect},rest,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:88,columnNumber:5}}),_react.default.createElement(_.Typography,(0,_extends2.default)({color:"font.primary",flex:1,fontSize:"m",lineHeight:(0,_reactNativeSizeMatters.moderateScale)(22)+"px"},selected&&selectedProps.labelProps,!selected&&unselectedProps.labelProps,disabled&&disabledProps.labelProps,labelStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:96,columnNumber:7}}),label),selected&&_react.default.createElement(_reactNativeRemixIcon.default,(0,_extends2.default)({color:theme.colors.font.primary,name:"check-fill",size:(0,_reactNativeSizeMatters.moderateScale)(20)},selectIconStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:109,columnNumber:9}})));};exports.SelectButton=SelectButton;SelectButton.propTypes={selected:_propTypes.default.bool.isRequired,onSelect:_propTypes.default.func.isRequired,disabled:_propTypes.default.bool,label:_propTypes.default.string,selectIconStyle:_propTypes.default.object,labelStyle:_propTypes.default.object};SelectButton.defaultProps={selected:false,onSelect:function onSelect(){}};
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"Accordion",{enumerable:true,get:function get(){return _Accordion.Accordion;}});Object.defineProperty(exports,"Alert",{enumerable:true,get:function get(){return _Alert.Alert;}});Object.defineProperty(exports,"AnimatedImage",{enumerable:true,get:function get(){return _AnimatedImage.AnimatedImage;}});Object.defineProperty(exports,"Avatar",{enumerable:true,get:function get(){return _Avatar.Avatar;}});Object.defineProperty(exports,"Badge",{enumerable:true,get:function get(){return _Badge.Badge;}});Object.defineProperty(exports,"BottomSheet",{enumerable:true,get:function get(){return _BottomSheet.BottomSheet;}});Object.defineProperty(exports,"BottomTabBar",{enumerable:true,get:function get(){return _BottomTabBar.BottomTabBar;}});Object.defineProperty(exports,"Button",{enumerable:true,get:function get(){return _Button.Button;}});Object.defineProperty(exports,"ButtonGroup",{enumerable:true,get:function get(){return _ButtonGroup.ButtonGroup;}});Object.defineProperty(exports,"Calendar",{enumerable:true,get:function get(){return _Calendar.Calendar;}});Object.defineProperty(exports,"Card",{enumerable:true,get:function get(){return _Card.Card;}});Object.defineProperty(exports,"Carousel",{enumerable:true,get:function get(){return _Carousel.Carousel;}});Object.defineProperty(exports,"CheckBox",{enumerable:true,get:function get(){return _CheckBox.CheckBox;}});Object.defineProperty(exports,"Chip",{enumerable:true,get:function get(){return _Chip.Chip;}});Object.defineProperty(exports,"Container",{enumerable:true,get:function get(){return _Container.Container;}});Object.defineProperty(exports,"Divider",{enumerable:true,get:function get(){return _Divider.Divider;}});Object.defineProperty(exports,"FAB",{enumerable:true,get:function get(){return _FAB.FAB;}});Object.defineProperty(exports,"FlashList",{enumerable:true,get:function get(){return _FlashList.FlashList;}});Object.defineProperty(exports,"FlatList",{enumerable:true,get:function get(){return _FlatList.FlatList;}});Object.defineProperty(exports,"Input",{enumerable:true,get:function get(){return _Input.Input;}});Object.defineProperty(exports,"InputEmailChip",{enumerable:true,get:function get(){return _InputEmailChip.InputEmailChip;}});Object.defineProperty(exports,"ListItem",{enumerable:true,get:function get(){return _ListItem.ListItem;}});Object.defineProperty(exports,"Loader",{enumerable:true,get:function get(){return _Loader.Loader;}});Object.defineProperty(exports,"MultiSelect",{enumerable:true,get:function get(){return _MultiSelect.MultiSelect;}});Object.defineProperty(exports,"NotificationPreferenceList",{enumerable:true,get:function get(){return _NotificationPreferenceList.NotificationPreferenceList;}});Object.defineProperty(exports,"OnBoarding",{enumerable:true,get:function get(){return _OnBoarding.OnBoarding;}});Object.defineProperty(exports,"OrganizationItem",{enumerable:true,get:function get(){return _OrganizationItem.OrganizationItem;}});Object.defineProperty(exports,"OtpInputs",{enumerable:true,get:function get(){return _OtpInputs.OtpInputs;}});Object.defineProperty(exports,"ParentView",{enumerable:true,get:function get(){return _ParentView.ParentView;}});Object.defineProperty(exports,"Popover",{enumerable:true,get:function get(){return _Popover.Popover;}});Object.defineProperty(exports,"RadioButton",{enumerable:true,get:function get(){return _RadioButton.RadioButton;}});Object.defineProperty(exports,"RichTextEditor",{enumerable:true,get:function get(){return _RichTextEditor.RichTextEditor;}});Object.defineProperty(exports,"ScrollView",{enumerable:true,get:function get(){return _ScrollView.ScrollView;}});Object.defineProperty(exports,"SearchBar",{enumerable:true,get:function get(){return _SearchBar.SearchBar;}});Object.defineProperty(exports,"SegmentedTopBar",{enumerable:true,get:function get(){return _SegmentedTopBar.SegmentedTopBar;}});Object.defineProperty(exports,"Select",{enumerable:true,get:function get(){return _Select.Select;}});Object.defineProperty(exports,"SocialButton",{enumerable:true,get:function get(){return _SocialButton.SocialButton;}});Object.defineProperty(exports,"Toast",{enumerable:true,get:function get(){return _Toast.Toast;}});Object.defineProperty(exports,"ToggleSwitch",{enumerable:true,get:function get(){return _ToggleSwitch.ToggleSwitch;}});Object.defineProperty(exports,"TopBar",{enumerable:true,get:function get(){return _TopBar.TopBar;}});Object.defineProperty(exports,"Touchable",{enumerable:true,get:function get(){return _Touchable.Touchable;}});Object.defineProperty(exports,"Typography",{enumerable:true,get:function get(){return _Typography.Typography;}});var _Button=require("./Button");var _SocialButton=require("./SocialButton");var _Container=require("./Container");var _Typography=require("./Typography");var _Input=require("./Input");var _FAB=require("./FAB");var _ToggleSwitch=require("./ToggleSwitch");var _Avatar=require("./Avatar");var _Badge=require("./Badge");var _Toast=require("./Toast");var _Alert=require("./Alert");var _BottomSheet=require("./BottomSheet");var _Chip=require("./Chip");var _ParentView=require("./ParentView");var _RichTextEditor=require("./RichTextEditor");var _ButtonGroup=require("./ButtonGroup");var _OtpInputs=require("./OtpInputs");var _Popover=require("./Popover");var _Touchable=require("./Touchable");var _Card=require("./Card");var _TopBar=require("./TopBar");var _RadioButton=require("./RadioButton");var _CheckBox=require("./CheckBox");var _Select=require("./Select");var _MultiSelect=require("./MultiSelect");var _Divider=require("./Divider");var _FlatList=require("./FlatList");var _ScrollView=require("./ScrollView");var _SegmentedTopBar=require("./SegmentedTopBar");var _ListItem=require("./ListItem");var _Carousel=require("./Carousel");var _OnBoarding=require("./OnBoarding");var _SearchBar=require("./SearchBar");var _Accordion=require("./Accordion");var _Calendar=require("./Calendar");var _FlashList=require("./FlashList");var _BottomTabBar=require("./BottomTabBar");var _AnimatedImage=require("./AnimatedImage");var _NotificationPreferenceList=require("./NotificationPreferenceList");var _OrganizationItem=require("./OrganizationItem");var _Loader=require("./Loader");var _InputEmailChip=require("./InputEmailChip");
1
+ Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"Accordion",{enumerable:true,get:function get(){return _Accordion.Accordion;}});Object.defineProperty(exports,"Alert",{enumerable:true,get:function get(){return _Alert.Alert;}});Object.defineProperty(exports,"AnimatedImage",{enumerable:true,get:function get(){return _AnimatedImage.AnimatedImage;}});Object.defineProperty(exports,"Avatar",{enumerable:true,get:function get(){return _Avatar.Avatar;}});Object.defineProperty(exports,"Badge",{enumerable:true,get:function get(){return _Badge.Badge;}});Object.defineProperty(exports,"BottomSheet",{enumerable:true,get:function get(){return _BottomSheet.BottomSheet;}});Object.defineProperty(exports,"BottomTabBar",{enumerable:true,get:function get(){return _BottomTabBar.BottomTabBar;}});Object.defineProperty(exports,"Button",{enumerable:true,get:function get(){return _Button.Button;}});Object.defineProperty(exports,"ButtonGroup",{enumerable:true,get:function get(){return _ButtonGroup.ButtonGroup;}});Object.defineProperty(exports,"Calendar",{enumerable:true,get:function get(){return _Calendar.Calendar;}});Object.defineProperty(exports,"Card",{enumerable:true,get:function get(){return _Card.Card;}});Object.defineProperty(exports,"Carousel",{enumerable:true,get:function get(){return _Carousel.Carousel;}});Object.defineProperty(exports,"CheckBox",{enumerable:true,get:function get(){return _CheckBox.CheckBox;}});Object.defineProperty(exports,"Chip",{enumerable:true,get:function get(){return _Chip.Chip;}});Object.defineProperty(exports,"Container",{enumerable:true,get:function get(){return _Container.Container;}});Object.defineProperty(exports,"Divider",{enumerable:true,get:function get(){return _Divider.Divider;}});Object.defineProperty(exports,"FAB",{enumerable:true,get:function get(){return _FAB.FAB;}});Object.defineProperty(exports,"FlashList",{enumerable:true,get:function get(){return _FlashList.FlashList;}});Object.defineProperty(exports,"FlatList",{enumerable:true,get:function get(){return _FlatList.FlatList;}});Object.defineProperty(exports,"Input",{enumerable:true,get:function get(){return _Input.Input;}});Object.defineProperty(exports,"InputEmailChip",{enumerable:true,get:function get(){return _InputEmailChip.InputEmailChip;}});Object.defineProperty(exports,"ListItem",{enumerable:true,get:function get(){return _ListItem.ListItem;}});Object.defineProperty(exports,"Loader",{enumerable:true,get:function get(){return _Loader.Loader;}});Object.defineProperty(exports,"MultiSelect",{enumerable:true,get:function get(){return _MultiSelect.MultiSelect;}});Object.defineProperty(exports,"NotificationPreferenceList",{enumerable:true,get:function get(){return _NotificationPreferenceList.NotificationPreferenceList;}});Object.defineProperty(exports,"OnBoarding",{enumerable:true,get:function get(){return _OnBoarding.OnBoarding;}});Object.defineProperty(exports,"OrganizationItem",{enumerable:true,get:function get(){return _OrganizationItem.OrganizationItem;}});Object.defineProperty(exports,"OtpInputs",{enumerable:true,get:function get(){return _OtpInputs.OtpInputs;}});Object.defineProperty(exports,"ParentView",{enumerable:true,get:function get(){return _ParentView.ParentView;}});Object.defineProperty(exports,"Popover",{enumerable:true,get:function get(){return _Popover.Popover;}});Object.defineProperty(exports,"RadioButton",{enumerable:true,get:function get(){return _RadioButton.RadioButton;}});Object.defineProperty(exports,"RichTextEditor",{enumerable:true,get:function get(){return _RichTextEditor.RichTextEditor;}});Object.defineProperty(exports,"ScrollView",{enumerable:true,get:function get(){return _ScrollView.ScrollView;}});Object.defineProperty(exports,"SearchBar",{enumerable:true,get:function get(){return _SearchBar.SearchBar;}});Object.defineProperty(exports,"SegmentedTopBar",{enumerable:true,get:function get(){return _SegmentedTopBar.SegmentedTopBar;}});Object.defineProperty(exports,"Select",{enumerable:true,get:function get(){return _Select.Select;}});Object.defineProperty(exports,"SelectButton",{enumerable:true,get:function get(){return _SelectButton.SelectButton;}});Object.defineProperty(exports,"SocialButton",{enumerable:true,get:function get(){return _SocialButton.SocialButton;}});Object.defineProperty(exports,"Toast",{enumerable:true,get:function get(){return _Toast.Toast;}});Object.defineProperty(exports,"ToggleSwitch",{enumerable:true,get:function get(){return _ToggleSwitch.ToggleSwitch;}});Object.defineProperty(exports,"TopBar",{enumerable:true,get:function get(){return _TopBar.TopBar;}});Object.defineProperty(exports,"Touchable",{enumerable:true,get:function get(){return _Touchable.Touchable;}});Object.defineProperty(exports,"Typography",{enumerable:true,get:function get(){return _Typography.Typography;}});var _Button=require("./Button");var _SocialButton=require("./SocialButton");var _Container=require("./Container");var _Typography=require("./Typography");var _Input=require("./Input");var _FAB=require("./FAB");var _ToggleSwitch=require("./ToggleSwitch");var _Avatar=require("./Avatar");var _Badge=require("./Badge");var _Toast=require("./Toast");var _Alert=require("./Alert");var _BottomSheet=require("./BottomSheet");var _Chip=require("./Chip");var _ParentView=require("./ParentView");var _RichTextEditor=require("./RichTextEditor");var _ButtonGroup=require("./ButtonGroup");var _OtpInputs=require("./OtpInputs");var _Popover=require("./Popover");var _Touchable=require("./Touchable");var _Card=require("./Card");var _TopBar=require("./TopBar");var _RadioButton=require("./RadioButton");var _CheckBox=require("./CheckBox");var _Select=require("./Select");var _MultiSelect=require("./MultiSelect");var _Divider=require("./Divider");var _FlatList=require("./FlatList");var _ScrollView=require("./ScrollView");var _SegmentedTopBar=require("./SegmentedTopBar");var _ListItem=require("./ListItem");var _Carousel=require("./Carousel");var _OnBoarding=require("./OnBoarding");var _SearchBar=require("./SearchBar");var _Accordion=require("./Accordion");var _Calendar=require("./Calendar");var _FlashList=require("./FlashList");var _BottomTabBar=require("./BottomTabBar");var _AnimatedImage=require("./AnimatedImage");var _NotificationPreferenceList=require("./NotificationPreferenceList");var _OrganizationItem=require("./OrganizationItem");var _Loader=require("./Loader");var _InputEmailChip=require("./InputEmailChip");var _SelectButton=require("./SelectButton");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neetoui-rn",
3
- "version": "0.0.241",
3
+ "version": "0.0.243",
4
4
  "main": "lib/index.js",
5
5
  "author": "BigBinary",
6
6
  "license": "MIT",
@@ -14,6 +14,8 @@ import {
14
14
  Loader,
15
15
  } from "@components";
16
16
 
17
+ import { Divider } from "./Divider";
18
+
17
19
  import { theme } from "../theme";
18
20
 
19
21
  const Title = ({
@@ -174,6 +176,8 @@ export const BottomSheet = ({
174
176
  selectedItem,
175
177
  onBackdropPress,
176
178
  searchBarProps,
179
+ shouldHideKeyboardOnScrollBegin = true,
180
+ shouldShowItemSeparator = false,
177
181
  ...rest
178
182
  }) => {
179
183
  const [searchText, setSearchText] = useState("");
@@ -253,6 +257,12 @@ export const BottomSheet = ({
253
257
  data={generateData()}
254
258
  initialNumToRender={data.length}
255
259
  keyExtractor={(_item, index) => index}
260
+ keyboardShouldPersistTaps="handled"
261
+ ItemSeparatorComponent={
262
+ shouldShowItemSeparator ? (
263
+ <Divider bg="background.grey200" />
264
+ ) : null
265
+ }
256
266
  ListFooterComponent={
257
267
  <Container>
258
268
  {children}
@@ -324,7 +334,9 @@ export const BottomSheet = ({
324
334
  }}
325
335
  />
326
336
  )}
327
- onScrollBeginDrag={Keyboard.dismiss}
337
+ onScrollBeginDrag={
338
+ shouldHideKeyboardOnScrollBegin && Keyboard.dismiss
339
+ }
328
340
  />
329
341
  )}
330
342
  </Container>
@@ -449,6 +461,8 @@ BottomSheet.propTypes = {
449
461
  ContentRow: PropTypes.elementType,
450
462
  contentType: PropTypes.oneOf(["checkbox", null]),
451
463
  canSearch: PropTypes.bool,
464
+ shouldHideKeyboardOnScrollBegin: PropTypes.bool,
465
+ shouldShowItemSeparator: PropTypes.bool,
452
466
  };
453
467
 
454
468
  const styles = StyleSheet.create({
@@ -1,7 +1,11 @@
1
1
  import styled from "styled-components/native";
2
2
  import { flexbox, space, border, color, layout } from "styled-system";
3
3
 
4
- export const ScrollView = styled.ScrollView`
4
+ export const ScrollView = styled.ScrollView.attrs(() => ({
5
+ keyboardShouldPersistTaps: "handled",
6
+ showsVerticalScrollIndicator: false,
7
+ contentContainerStyle: { flex: 1 },
8
+ }))`
5
9
  ${flexbox}
6
10
  ${space}
7
11
  ${border}
@@ -0,0 +1,150 @@
1
+ import React, { useContext } from "react";
2
+
3
+ import PropTypes from "prop-types";
4
+ import Icon from "react-native-remix-icon";
5
+ import { moderateScale } from "react-native-size-matters";
6
+ import { ThemeContext } from "styled-components/native";
7
+
8
+ import { Typography, Touchable } from "@components";
9
+
10
+ /**
11
+ *
12
+ * <div class="screenshots">
13
+ * <img src="screenshots/selectButton/selectButton.png" />
14
+ * </div>
15
+ *
16
+ * This component supports below props categories from [styled-system](/styled-system).
17
+ * <ul>
18
+ * <li>flexbox</li>
19
+ * <li>space</li>
20
+ * <li>border</li>
21
+ * <li>layout</li>
22
+ * <li>color</li>
23
+ * <li>buttonStyle</li>
24
+ * </ul>
25
+ *
26
+ * ## Usage
27
+ * ```js
28
+ * import * as React from "react";
29
+ * import { moderateScale } from "react-native-size-matters";
30
+ * import { Container, SelectButton } from "@bigbinary/neetoui-rn";
31
+ *
32
+ * export default function Main() {
33
+ * const [selected1, setSelected1] = useState(true);
34
+ * const [selected2, setSelected2] = useState(false);
35
+ *
36
+ * return (
37
+ * <Container>
38
+ * <SelectButton
39
+ * mt={moderateScale(2)}
40
+ * selected={selected1}
41
+ * onSelect={() => setSelected1(prev => !prev)}
42
+ * label={`Button marked as ${!selected1 ? "un" : ""}selected`}
43
+ * />
44
+ * <SelectButton
45
+ * mt={moderateScale(3)}
46
+ * selected={selected2}
47
+ * onSelect={() => setSelected2(prev => !prev)}
48
+ * label={`Button marked as ${!selected2 ? "un" : ""}selected`}
49
+ * />
50
+ * <SelectButton mt={moderateScale(3)} disabled label="Disabled button" />
51
+ * </Container>
52
+ * );
53
+ * }
54
+ * ```
55
+ *
56
+ */
57
+
58
+ export const SelectButton = ({
59
+ selected,
60
+ onSelect,
61
+ disabled,
62
+ label,
63
+ selectIconStyle,
64
+ labelStyle,
65
+ ...rest
66
+ }) => {
67
+ const theme = useContext(ThemeContext);
68
+
69
+ const disabledProps = {
70
+ labelProps: {
71
+ opacity: 0.5,
72
+ },
73
+ };
74
+
75
+ const selectedProps = {
76
+ labelProps: {
77
+ fontFamily: theme.fonts.sf700,
78
+ },
79
+ };
80
+
81
+ const unselectedProps = {
82
+ labelProps: {
83
+ fontFamily: theme.fonts.sf400,
84
+ },
85
+ };
86
+
87
+ return (
88
+ <Touchable
89
+ alignItems="center"
90
+ disabled={disabled}
91
+ flexDirection="row"
92
+ py={moderateScale(8)}
93
+ onPress={onSelect}
94
+ {...rest}
95
+ >
96
+ <Typography
97
+ color="font.primary"
98
+ flex={1}
99
+ fontSize="m"
100
+ lineHeight={`${moderateScale(22)}px`}
101
+ {...(selected && selectedProps.labelProps)}
102
+ {...(!selected && unselectedProps.labelProps)}
103
+ {...(disabled && disabledProps.labelProps)}
104
+ {...labelStyle}
105
+ >
106
+ {label}
107
+ </Typography>
108
+ {selected && (
109
+ <Icon
110
+ color={theme.colors.font.primary}
111
+ name="check-fill"
112
+ size={moderateScale(20)}
113
+ {...selectIconStyle}
114
+ />
115
+ )}
116
+ </Touchable>
117
+ );
118
+ };
119
+
120
+ SelectButton.propTypes = {
121
+ /**
122
+ * Whether the button is selected or not.
123
+ */
124
+ selected: PropTypes.bool.isRequired,
125
+ /**
126
+ * Function to execute on press.
127
+ */
128
+ onSelect: PropTypes.func.isRequired,
129
+ /**
130
+ * To disable the component.
131
+ */
132
+ disabled: PropTypes.bool,
133
+ /**
134
+ * Text label to be shown with the button.
135
+ */
136
+ label: PropTypes.string,
137
+ /**
138
+ * Customize selection icon style.
139
+ */
140
+ selectIconStyle: PropTypes.object,
141
+ /**
142
+ * Customize label style.
143
+ */
144
+ labelStyle: PropTypes.object,
145
+ };
146
+
147
+ SelectButton.defaultProps = {
148
+ selected: false,
149
+ onSelect: () => {},
150
+ };
@@ -40,3 +40,4 @@ export { NotificationPreferenceList } from "./NotificationPreferenceList";
40
40
  export { OrganizationItem } from "./OrganizationItem";
41
41
  export { Loader } from "./Loader";
42
42
  export { InputEmailChip } from "./InputEmailChip";
43
+ export { SelectButton } from "./SelectButton";