@bigbinary/neetoui-rn 0.0.124 → 0.0.127

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.
Files changed (66) hide show
  1. package/assets/fonts/SFProText-Bold.ttf +0 -0
  2. package/assets/fonts/SFProText-Medium.ttf +0 -0
  3. package/assets/fonts/SFProText-Regular.ttf +0 -0
  4. package/assets/fonts/SFProText-Semibold.ttf +0 -0
  5. package/assets/icons/apple-logo.svg +3 -0
  6. package/assets/icons/error.svg +4 -0
  7. package/assets/icons/google-logo.svg +6 -0
  8. package/assets/icons/info.svg +7 -0
  9. package/assets/icons/success.svg +3 -0
  10. package/assets/icons/warning.svg +5 -0
  11. package/lib/components/Alert.js +1 -1
  12. package/lib/components/Avatar.js +1 -1
  13. package/lib/components/Badge.js +1 -1
  14. package/lib/components/BottomSheet.js +1 -1
  15. package/lib/components/Button.js +1 -1
  16. package/lib/components/Carousel.js +1 -0
  17. package/lib/components/CheckBox.js +1 -1
  18. package/lib/components/Chip.js +1 -1
  19. package/lib/components/Input.js +1 -1
  20. package/lib/components/ListItem.js +1 -0
  21. package/lib/components/MultiSelect.js +1 -1
  22. package/lib/components/OnBoarding.js +1 -0
  23. package/lib/components/OtpInputs.js +1 -1
  24. package/lib/components/Popover.js +1 -1
  25. package/lib/components/RadioButton.js +1 -1
  26. package/lib/components/SearchBar.js +1 -0
  27. package/lib/components/SegmentPicker.js +1 -0
  28. package/lib/components/Select.js +1 -1
  29. package/lib/components/SocialButton.js +1 -0
  30. package/lib/components/Toast.js +1 -1
  31. package/lib/components/ToggleSwitch.js +1 -1
  32. package/lib/components/index.js +1 -1
  33. package/lib/config/toasterConfig.js +1 -1
  34. package/lib/hooks/index.js +1 -1
  35. package/lib/hooks/useDebounce.js +1 -0
  36. package/lib/theme/index.js +1 -1
  37. package/package.json +5 -3
  38. package/src/components/Alert.js +5 -5
  39. package/src/components/Avatar.js +1 -1
  40. package/src/components/Badge.js +1 -1
  41. package/src/components/BottomSheet.js +113 -74
  42. package/src/components/Button.js +66 -64
  43. package/src/components/Carousel.js +112 -0
  44. package/src/components/CheckBox.js +87 -81
  45. package/src/components/Chip.js +1 -1
  46. package/src/components/Input.js +147 -241
  47. package/src/components/ListItem.js +66 -0
  48. package/src/components/MultiSelect.js +10 -8
  49. package/src/components/OnBoarding.js +116 -0
  50. package/src/components/OtpInputs.js +1 -1
  51. package/src/components/Popover.js +13 -1
  52. package/src/components/RadioButton.js +88 -114
  53. package/src/components/SearchBar.js +134 -0
  54. package/src/components/SegmentPicker.js +210 -0
  55. package/src/components/Select.js +9 -7
  56. package/src/components/SocialButton.js +89 -0
  57. package/src/components/Toast.js +85 -30
  58. package/src/components/ToggleSwitch.js +49 -97
  59. package/src/components/Typography.js +2 -2
  60. package/src/components/index.js +6 -0
  61. package/src/config/toasterConfig.js +2 -2
  62. package/src/hooks/index.js +1 -0
  63. package/src/hooks/useDebounce.js +16 -0
  64. package/src/theme/index.js +65 -34
  65. package/assets/fonts/Inter-Bold.ttf +0 -0
  66. package/assets/fonts/Inter-Regular.ttf +0 -0
@@ -1 +1 @@
1
- var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.Select=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 _reactNativeRemixIcon=_interopRequireDefault(require("react-native-remix-icon"));var _propTypes=_interopRequireDefault(require("prop-types"));var _reactNativeReanimated=_interopRequireWildcard(require("react-native-reanimated"));var _reactNative=require("react-native");var _native=require("styled-components/native");var _reactNativeGestureHandler=require("react-native-gesture-handler");var _=require("./");var _excluded=["options","label","value","placeholder","emptyOptionsPlaceholder","labelExtractor","valueExtractor","onSelect","isLoading","isSearchable","showCreateOption","showCreateOptionLoader","createOptionLabel","onPressCreateOption","labelStyle","containerStyle","inputContainerStyle","dropdownContainerStyle","itemContainerStyle","itemLabelStyle","selectedItemContainerStyle","selectedItemLabelStyle","searchInputContainerStyle","searchInputStyle","emptyOptionsContainerStyle","emptyOptionsLabelStyle","createSearchedOptionContainerStyle","createSearchedOptionLabelStyle"];var _this=this,_jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/Select.js";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 DropdownItem=function DropdownItem(_ref){var label=_ref.label,isSelectedItem=_ref.isSelectedItem,defaultDropdownItemHeight=_ref.defaultDropdownItemHeight,onPress=_ref.onPress,itemContainerStyle=_ref.itemContainerStyle,selectedItemContainerStyle=_ref.selectedItemContainerStyle,itemLabelStyle=_ref.itemLabelStyle,selectedItemLabelStyle=_ref.selectedItemLabelStyle;return _react.default.createElement(_reactNative.TouchableWithoutFeedback,{onPress:onPress,__self:_this,__source:{fileName:_jsxFileName,lineNumber:31,columnNumber:3}},_react.default.createElement(_.Container,(0,_extends2.default)({bg:isSelectedItem?"background.base":"background.white",height:defaultDropdownItemHeight,p:2},itemContainerStyle,isSelectedItem&&selectedItemContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:32,columnNumber:5}}),_react.default.createElement(_.Typography,(0,_extends2.default)({fontFamily:"inter400",fontSize:"s",color:isSelectedItem?"font.white":"font.grey"},itemLabelStyle,isSelectedItem&&selectedItemLabelStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:39,columnNumber:7}}),label)));};DropdownItem.propTypes={label:_propTypes.default.string.isRequired,isSelectedItem:_propTypes.default.bool,defaultDropdownItemHeight:_propTypes.default.number,onPress:_propTypes.default.func,itemContainerStyle:_propTypes.default.object,selectedItemContainerStyle:_propTypes.default.object,itemLabelStyle:_propTypes.default.object,selectedItemLabelStyle:_propTypes.default.object};var Select=function Select(_ref2){var options=_ref2.options,label=_ref2.label,value=_ref2.value,placeholder=_ref2.placeholder,emptyOptionsPlaceholder=_ref2.emptyOptionsPlaceholder,labelExtractor=_ref2.labelExtractor,valueExtractor=_ref2.valueExtractor,onSelect=_ref2.onSelect,isLoading=_ref2.isLoading,isSearchable=_ref2.isSearchable,showCreateOption=_ref2.showCreateOption,showCreateOptionLoader=_ref2.showCreateOptionLoader,createOptionLabel=_ref2.createOptionLabel,onPressCreateOption=_ref2.onPressCreateOption,labelStyle=_ref2.labelStyle,containerStyle=_ref2.containerStyle,inputContainerStyle=_ref2.inputContainerStyle,dropdownContainerStyle=_ref2.dropdownContainerStyle,itemContainerStyle=_ref2.itemContainerStyle,itemLabelStyle=_ref2.itemLabelStyle,selectedItemContainerStyle=_ref2.selectedItemContainerStyle,selectedItemLabelStyle=_ref2.selectedItemLabelStyle,searchInputContainerStyle=_ref2.searchInputContainerStyle,searchInputStyle=_ref2.searchInputStyle,emptyOptionsContainerStyle=_ref2.emptyOptionsContainerStyle,emptyOptionsLabelStyle=_ref2.emptyOptionsLabelStyle,createSearchedOptionContainerStyle=_ref2.createSearchedOptionContainerStyle,createSearchedOptionLabelStyle=_ref2.createSearchedOptionLabelStyle,rest=(0,_objectWithoutProperties2.default)(_ref2,_excluded);var theme=(0,_react.useContext)(_native.ThemeContext);var _useState=(0,_react.useState)(false),_useState2=(0,_slicedToArray2.default)(_useState,2),showDropdown=_useState2[0],setShowDropdown=_useState2[1];var _useState3=(0,_react.useState)(""),_useState4=(0,_slicedToArray2.default)(_useState3,2),searchQuery=_useState4[0],setSearchQuery=_useState4[1];var dropdownAnimatedHeight=(0,_reactNativeReanimated.useSharedValue)(0);var formatStr=function formatStr(str){var _str$toLowerCase;return str==null?void 0:(_str$toLowerCase=str.toLowerCase())==null?void 0:_str$toLowerCase.trim();};var filteredOptions=options.filter(function(item,index){var label=labelExtractor(item,index);if((searchQuery==null?void 0:searchQuery.length)===0)return true;return formatStr(label).includes(formatStr(searchQuery));});var isOptionsEmpty=!options||(options==null?void 0:options.length)===0;var isSearchedOptionsEmpty=searchQuery.length>0&&filteredOptions.length===0;var emptyOptionsPlaceholderHeight=40;var emptySearchedOptionsHeight=40;var searchInputHeight=35;var defaultDropdownItemHeight=(itemContainerStyle==null?void 0:itemContainerStyle.height)||32;var dropdownHeight=(dropdownContainerStyle==null?void 0:dropdownContainerStyle.height)||(dropdownContainerStyle==null?void 0:dropdownContainerStyle.maxHeight)||defaultDropdownItemHeight*Math.min(filteredOptions==null?void 0:filteredOptions.length,6)+(isSearchable?searchInputHeight+10:0)+(isOptionsEmpty?emptyOptionsPlaceholderHeight:0)+(isSearchedOptionsEmpty&&showCreateOption?emptySearchedOptionsHeight:0);var selectedOptionLabel=labelExtractor(value||{});var selectedOptionValue=valueExtractor(value||{});var animatedStyles=(0,_reactNativeReanimated.useAnimatedStyle)(function(){var _f=function _f(){return{height:(0,_reactNativeReanimated.withTiming)(dropdownAnimatedHeight.value,{duration:100,easing:_reactNativeReanimated.Easing.ease},function(){var _f=function _f(){if(dropdownAnimatedHeight.value===0){(0,_reactNativeReanimated.runOnJS)(setShowDropdown)(false);}};_f._closure={dropdownAnimatedHeight:dropdownAnimatedHeight,runOnJS:_reactNativeReanimated.runOnJS,setShowDropdown:setShowDropdown};_f.asString="function _f(){const{dropdownAnimatedHeight,runOnJS,setShowDropdown}=jsThis._closure;{if(dropdownAnimatedHeight.value===0){runOnJS(setShowDropdown)(false);}}}";_f.__workletHash=8540692570337;_f.__location="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/Select.js (176:8)";return _f;}())};};_f._closure={withTiming:_reactNativeReanimated.withTiming,dropdownAnimatedHeight:dropdownAnimatedHeight,Easing:{ease:_reactNativeReanimated.Easing.ease},runOnJS:_reactNativeReanimated.runOnJS,setShowDropdown:setShowDropdown};_f.asString="function _f(){const{withTiming,dropdownAnimatedHeight,Easing,runOnJS,setShowDropdown}=jsThis._closure;{return{height:withTiming(dropdownAnimatedHeight.value,{duration:100,easing:Easing.ease},function(){if(dropdownAnimatedHeight.value===0){runOnJS(setShowDropdown)(false);}})};}}";_f.__workletHash=4835541372615;_f.__location="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/Select.js (168:42)";return _f;}(),[]);var toggleAnimation=function toggleAnimation(){dropdownAnimatedHeight.value=dropdownAnimatedHeight.value===0?dropdownHeight:0;};var handleOpenDropdown=function handleOpenDropdown(){_reactNative.Keyboard.dismiss();setSearchQuery("");if(!showDropdown){setShowDropdown(true);}if(showDropdown){toggleAnimation();}};var handleItemSelection=function handleItemSelection(item,index){toggleAnimation();onSelect(item,index);};(0,_react.useEffect)(function(){if(showDropdown){dropdownAnimatedHeight.value=dropdownHeight;}},[showDropdown,dropdownHeight]);return _react.default.createElement(_.Container,(0,_extends2.default)({},containerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:214,columnNumber:5}}),_react.default.createElement(_.Typography,(0,_extends2.default)({fontFamily:"inter400",mb:1,fontSize:"s",color:"font.base"},labelStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:215,columnNumber:7}}),label),_react.default.createElement(_reactNative.TouchableWithoutFeedback,{disabled:isLoading,onPress:handleOpenDropdown,__self:_this,__source:{fileName:_jsxFileName,lineNumber:224,columnNumber:7}},_react.default.createElement(_.Container,(0,_extends2.default)({borderWidth:1,borderColor:"border.grey400",p:2,flexDirection:"row",justifyContent:"space-between",alignItems:"center"},inputContainerStyle,rest,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:228,columnNumber:9}}),_react.default.createElement(_.Typography,{fontFamily:"inter400",fontSize:"s",color:"font.grey",__self:_this,__source:{fileName:_jsxFileName,lineNumber:238,columnNumber:11}},selectedOptionLabel||placeholder),isLoading?_react.default.createElement(_reactNative.ActivityIndicator,{size:"small",color:theme.colors.background.base,__self:_this,__source:{fileName:_jsxFileName,lineNumber:242,columnNumber:13}}):_react.default.createElement(_reactNativeRemixIcon.default,{name:"arrow-"+(showDropdown?"up":"down")+"-s-line",size:"20",color:"grey",__self:_this,__source:{fileName:_jsxFileName,lineNumber:247,columnNumber:13}}))),showDropdown&&_react.default.createElement(_.Container,{overflow:"hidden",__self:_this,__source:{fileName:_jsxFileName,lineNumber:256,columnNumber:9}},_react.default.createElement(_reactNativeReanimated.default.View,{style:animatedStyles,__self:_this,__source:{fileName:_jsxFileName,lineNumber:257,columnNumber:11}},_react.default.createElement(_.Card,(0,_extends2.default)({bg:"background.white",borderWidth:1,borderColor:"border.grey400",maxHeight:dropdownHeight},dropdownContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:258,columnNumber:13}}),isSearchable&&_react.default.createElement(_.Container,(0,_extends2.default)({p:1},searchInputContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:266,columnNumber:17}}),_react.default.createElement(_.Input,(0,_extends2.default)({placeholder:"Search",onChangeText:setSearchQuery,fontSize:"s",containerStyles:{height:searchInputHeight,justifyContent:"center"}},searchInputStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:267,columnNumber:19}}))),isOptionsEmpty&&_react.default.createElement(_.Container,(0,_extends2.default)({height:emptyOptionsPlaceholderHeight,justifyContent:"center",alignItems:"center"},emptyOptionsContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:281,columnNumber:17}}),_react.default.createElement(_.Typography,(0,_extends2.default)({fontFamily:"inter400",fontSize:"s",color:"font.grey"},emptyOptionsLabelStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:287,columnNumber:19}}),emptyOptionsPlaceholder||"No Options")),isSearchedOptionsEmpty&&showCreateOption&&_react.default.createElement(_.Touchable,(0,_extends2.default)({height:emptySearchedOptionsHeight,justifyContent:"center",alignItems:"center",onPress:function onPress(){return onPressCreateOption(searchQuery);}},createSearchedOptionContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:298,columnNumber:17}}),showCreateOptionLoader?_react.default.createElement(_reactNative.ActivityIndicator,{size:"small",color:theme.colors.background.base,__self:_this,__source:{fileName:_jsxFileName,lineNumber:306,columnNumber:21}}):_react.default.createElement(_.Typography,(0,_extends2.default)({fontFamily:"inter400",fontSize:"s",color:"font.grey"},createSearchedOptionLabelStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:311,columnNumber:21}}),createOptionLabel||"Create "+searchQuery+" option")),_react.default.createElement(_.Container,{height:0,__self:_this,__source:{fileName:_jsxFileName,lineNumber:323,columnNumber:15}},_react.default.createElement(_.Input,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:324,columnNumber:17}})),_react.default.createElement(_reactNativeGestureHandler.ScrollView,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:326,columnNumber:15}},filteredOptions.map(function(item,index){var optionLabel=labelExtractor(item,index);var optionValue=valueExtractor(item,index);var isSelectedItem=selectedOptionValue&&selectedOptionValue===optionValue;return _react.default.createElement(DropdownItem,{key:index,label:optionLabel,isSelectedItem:isSelectedItem,defaultDropdownItemHeight:defaultDropdownItemHeight,onPress:function onPress(){return handleItemSelection(item,index);},itemContainerStyle:itemContainerStyle,selectedItemContainerStyle:selectedItemContainerStyle,itemLabelStyle:itemLabelStyle,selectedItemLabelStyle:selectedItemLabelStyle,__self:_this,__source:{fileName:_jsxFileName,lineNumber:333,columnNumber:21}});}))))));};exports.Select=Select;Select.propTypes={label:_propTypes.default.string,options:_propTypes.default.arrayOf(_propTypes.default.shape({label:_propTypes.default.string,value:_propTypes.default.string})).isRequired,placeholder:_propTypes.default.string,emptyOptionsPlaceholder:_propTypes.default.string,labelExtractor:_propTypes.default.func,valueExtractor:_propTypes.default.func,value:_propTypes.default.object,onSelect:_propTypes.default.func,isLoading:_propTypes.default.bool,isSearchable:_propTypes.default.bool,showCreateOption:_propTypes.default.bool,showCreateOptionLoader:_propTypes.default.bool,createOptionLabel:_propTypes.default.string,onPressCreateOption:_propTypes.default.func,labelStyle:_propTypes.default.object,containerStyle:_propTypes.default.object,inputContainerStyle:_propTypes.default.object,dropdownContainerStyle:_propTypes.default.object,itemContainerStyle:_propTypes.default.object,itemLabelStyle:_propTypes.default.object,selectedItemContainerStyle:_propTypes.default.object,selectedItemLabelStyle:_propTypes.default.object,searchInputContainerStyle:_propTypes.default.object,searchInputStyle:_propTypes.default.object,emptyOptionsContainerStyle:_propTypes.default.object,emptyOptionsLabelStyle:_propTypes.default.object,createSearchedOptionContainerStyle:_propTypes.default.object,createSearchedOptionLabelStyle:_propTypes.default.object};Select.defaultProps={label:null,placeholder:"Select Option",emptyOptionsPlaceholder:null,labelExtractor:function labelExtractor(option){return option==null?void 0:option.label;},valueExtractor:function valueExtractor(option){return option==null?void 0:option.value;},value:null,onSelect:function onSelect(){},isLoading:false,isSearchable:false,showCreateOption:false,showCreateOptionLoader:false,createOptionLabel:null,onPressCreateOption:function onPressCreateOption(){}};
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.Select=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 _reactNativeRemixIcon=_interopRequireDefault(require("react-native-remix-icon"));var _propTypes=_interopRequireDefault(require("prop-types"));var _reactNativeReanimated=_interopRequireWildcard(require("react-native-reanimated"));var _reactNative=require("react-native");var _native=require("styled-components/native");var _reactNativeGestureHandler=require("react-native-gesture-handler");var _=require("./");var _excluded=["options","label","value","placeholder","emptyOptionsPlaceholder","labelExtractor","valueExtractor","onSelect","isLoading","isSearchable","showCreateOption","showCreateOptionLoader","createOptionLabel","onPressCreateOption","labelStyle","containerStyle","inputContainerStyle","dropdownContainerStyle","itemContainerStyle","itemLabelStyle","selectedItemContainerStyle","selectedItemLabelStyle","searchInputContainerStyle","searchInputStyle","emptyOptionsContainerStyle","emptyOptionsLabelStyle","createSearchedOptionContainerStyle","createSearchedOptionLabelStyle"];var _this=this,_jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/Select.js";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 DropdownItem=function DropdownItem(_ref){var label=_ref.label,isSelectedItem=_ref.isSelectedItem,defaultDropdownItemHeight=_ref.defaultDropdownItemHeight,onPress=_ref.onPress,itemContainerStyle=_ref.itemContainerStyle,selectedItemContainerStyle=_ref.selectedItemContainerStyle,itemLabelStyle=_ref.itemLabelStyle,selectedItemLabelStyle=_ref.selectedItemLabelStyle;return _react.default.createElement(_reactNative.TouchableWithoutFeedback,{onPress:onPress,__self:_this,__source:{fileName:_jsxFileName,lineNumber:31,columnNumber:3}},_react.default.createElement(_.Container,(0,_extends2.default)({bg:isSelectedItem?"background.base":"background.white",height:defaultDropdownItemHeight,p:2},itemContainerStyle,isSelectedItem&&selectedItemContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:32,columnNumber:5}}),_react.default.createElement(_.Typography,(0,_extends2.default)({fontFamily:"sf400",fontSize:"s",color:isSelectedItem?"font.white":"font.grey"},itemLabelStyle,isSelectedItem&&selectedItemLabelStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:39,columnNumber:7}}),label)));};DropdownItem.propTypes={label:_propTypes.default.string.isRequired,isSelectedItem:_propTypes.default.bool,defaultDropdownItemHeight:_propTypes.default.number,onPress:_propTypes.default.func,itemContainerStyle:_propTypes.default.object,selectedItemContainerStyle:_propTypes.default.object,itemLabelStyle:_propTypes.default.object,selectedItemLabelStyle:_propTypes.default.object};var Select=function Select(_ref2){var options=_ref2.options,label=_ref2.label,value=_ref2.value,placeholder=_ref2.placeholder,emptyOptionsPlaceholder=_ref2.emptyOptionsPlaceholder,labelExtractor=_ref2.labelExtractor,valueExtractor=_ref2.valueExtractor,onSelect=_ref2.onSelect,isLoading=_ref2.isLoading,isSearchable=_ref2.isSearchable,showCreateOption=_ref2.showCreateOption,showCreateOptionLoader=_ref2.showCreateOptionLoader,createOptionLabel=_ref2.createOptionLabel,onPressCreateOption=_ref2.onPressCreateOption,labelStyle=_ref2.labelStyle,containerStyle=_ref2.containerStyle,inputContainerStyle=_ref2.inputContainerStyle,dropdownContainerStyle=_ref2.dropdownContainerStyle,itemContainerStyle=_ref2.itemContainerStyle,itemLabelStyle=_ref2.itemLabelStyle,selectedItemContainerStyle=_ref2.selectedItemContainerStyle,selectedItemLabelStyle=_ref2.selectedItemLabelStyle,searchInputContainerStyle=_ref2.searchInputContainerStyle,searchInputStyle=_ref2.searchInputStyle,emptyOptionsContainerStyle=_ref2.emptyOptionsContainerStyle,emptyOptionsLabelStyle=_ref2.emptyOptionsLabelStyle,createSearchedOptionContainerStyle=_ref2.createSearchedOptionContainerStyle,createSearchedOptionLabelStyle=_ref2.createSearchedOptionLabelStyle,rest=(0,_objectWithoutProperties2.default)(_ref2,_excluded);var theme=(0,_react.useContext)(_native.ThemeContext);var _useState=(0,_react.useState)(false),_useState2=(0,_slicedToArray2.default)(_useState,2),showDropdown=_useState2[0],setShowDropdown=_useState2[1];var _useState3=(0,_react.useState)(""),_useState4=(0,_slicedToArray2.default)(_useState3,2),searchQuery=_useState4[0],setSearchQuery=_useState4[1];var dropdownAnimatedHeight=(0,_reactNativeReanimated.useSharedValue)(0);var formatStr=function formatStr(str){var _str$toLowerCase;return str==null?void 0:(_str$toLowerCase=str.toLowerCase())==null?void 0:_str$toLowerCase.trim();};var filteredOptions=options.filter(function(item,index){var label=labelExtractor(item,index);if((searchQuery==null?void 0:searchQuery.length)===0)return true;return formatStr(label).includes(formatStr(searchQuery));});var isOptionsEmpty=!options||(options==null?void 0:options.length)===0;var isSearchedOptionsEmpty=searchQuery.length>0&&filteredOptions.length===0;var emptyOptionsPlaceholderHeight=40;var emptySearchedOptionsHeight=40;var searchInputHeight=35;var defaultDropdownItemHeight=(itemContainerStyle==null?void 0:itemContainerStyle.height)||32;var dropdownHeight=(dropdownContainerStyle==null?void 0:dropdownContainerStyle.height)||(dropdownContainerStyle==null?void 0:dropdownContainerStyle.maxHeight)||defaultDropdownItemHeight*Math.min(filteredOptions==null?void 0:filteredOptions.length,6)+(isSearchable?searchInputHeight+10:0)+(isOptionsEmpty&&!(isSearchedOptionsEmpty&&showCreateOption)?emptyOptionsPlaceholderHeight:0)+(isSearchedOptionsEmpty&&showCreateOption?emptySearchedOptionsHeight:0);var selectedOptionLabel=labelExtractor(value||{});var selectedOptionValue=valueExtractor(value||{});var animatedStyles=(0,_reactNativeReanimated.useAnimatedStyle)(function(){var _f=function _f(){return{height:(0,_reactNativeReanimated.withTiming)(dropdownAnimatedHeight.value,{duration:100,easing:_reactNativeReanimated.Easing.ease},function(){var _f=function _f(){if(dropdownAnimatedHeight.value===0){(0,_reactNativeReanimated.runOnJS)(setShowDropdown)(false);}};_f._closure={dropdownAnimatedHeight:dropdownAnimatedHeight,runOnJS:_reactNativeReanimated.runOnJS,setShowDropdown:setShowDropdown};_f.asString="function _f(){const{dropdownAnimatedHeight,runOnJS,setShowDropdown}=jsThis._closure;{if(dropdownAnimatedHeight.value===0){runOnJS(setShowDropdown)(false);}}}";_f.__workletHash=8540692570337;_f.__location="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/Select.js (178:8)";return _f;}())};};_f._closure={withTiming:_reactNativeReanimated.withTiming,dropdownAnimatedHeight:dropdownAnimatedHeight,Easing:{ease:_reactNativeReanimated.Easing.ease},runOnJS:_reactNativeReanimated.runOnJS,setShowDropdown:setShowDropdown};_f.asString="function _f(){const{withTiming,dropdownAnimatedHeight,Easing,runOnJS,setShowDropdown}=jsThis._closure;{return{height:withTiming(dropdownAnimatedHeight.value,{duration:100,easing:Easing.ease},function(){if(dropdownAnimatedHeight.value===0){runOnJS(setShowDropdown)(false);}})};}}";_f.__workletHash=4835541372615;_f.__location="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/Select.js (170:42)";return _f;}(),[]);var toggleAnimation=function toggleAnimation(){dropdownAnimatedHeight.value=dropdownAnimatedHeight.value===0?dropdownHeight:0;};var handleOpenDropdown=function handleOpenDropdown(){_reactNative.Keyboard.dismiss();setSearchQuery("");if(!showDropdown){setShowDropdown(true);}if(showDropdown){toggleAnimation();}};var handleItemSelection=function handleItemSelection(item,index){toggleAnimation();onSelect(item,index);};(0,_react.useEffect)(function(){if(showDropdown){dropdownAnimatedHeight.value=dropdownHeight;}},[showDropdown,dropdownHeight]);return _react.default.createElement(_.Container,(0,_extends2.default)({},containerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:216,columnNumber:5}}),_react.default.createElement(_.Typography,(0,_extends2.default)({fontFamily:"sf400",mb:1,fontSize:"s",color:"font.base"},labelStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:217,columnNumber:7}}),label),_react.default.createElement(_reactNative.TouchableWithoutFeedback,{disabled:isLoading,onPress:handleOpenDropdown,__self:_this,__source:{fileName:_jsxFileName,lineNumber:226,columnNumber:7}},_react.default.createElement(_.Container,(0,_extends2.default)({borderWidth:1,borderColor:"border.grey400",p:2,flexDirection:"row",justifyContent:"space-between",alignItems:"center"},inputContainerStyle,rest,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:230,columnNumber:9}}),_react.default.createElement(_.Typography,{fontFamily:"sf400",fontSize:"s",color:"font.grey",__self:_this,__source:{fileName:_jsxFileName,lineNumber:240,columnNumber:11}},selectedOptionLabel||placeholder),isLoading?_react.default.createElement(_reactNative.ActivityIndicator,{size:"small",color:theme.colors.background.base,__self:_this,__source:{fileName:_jsxFileName,lineNumber:244,columnNumber:13}}):_react.default.createElement(_reactNativeRemixIcon.default,{name:"arrow-"+(showDropdown?"up":"down")+"-s-line",size:"20",color:"grey",__self:_this,__source:{fileName:_jsxFileName,lineNumber:249,columnNumber:13}}))),showDropdown&&_react.default.createElement(_.Container,{overflow:"hidden",__self:_this,__source:{fileName:_jsxFileName,lineNumber:258,columnNumber:9}},_react.default.createElement(_reactNativeReanimated.default.View,{style:animatedStyles,__self:_this,__source:{fileName:_jsxFileName,lineNumber:259,columnNumber:11}},_react.default.createElement(_.Card,(0,_extends2.default)({bg:"background.white",borderWidth:1,borderColor:"border.grey400",maxHeight:dropdownHeight},dropdownContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:260,columnNumber:13}}),isSearchable&&_react.default.createElement(_.Container,(0,_extends2.default)({p:1},searchInputContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:268,columnNumber:17}}),_react.default.createElement(_.Input,(0,_extends2.default)({placeholder:"Search",onChangeText:setSearchQuery,fontSize:"s",containerStyles:{height:searchInputHeight,justifyContent:"center"}},searchInputStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:269,columnNumber:19}}))),isOptionsEmpty&&!(isSearchedOptionsEmpty&&showCreateOption)&&_react.default.createElement(_.Container,(0,_extends2.default)({height:emptyOptionsPlaceholderHeight,justifyContent:"center",alignItems:"center"},emptyOptionsContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:283,columnNumber:17}}),_react.default.createElement(_.Typography,(0,_extends2.default)({fontFamily:"sf400",fontSize:"s",color:"font.grey"},emptyOptionsLabelStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:289,columnNumber:19}}),emptyOptionsPlaceholder||"No Options")),isSearchedOptionsEmpty&&showCreateOption&&_react.default.createElement(_.Touchable,(0,_extends2.default)({height:emptySearchedOptionsHeight,justifyContent:"center",alignItems:"center",onPress:function onPress(){return onPressCreateOption(searchQuery);}},createSearchedOptionContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:300,columnNumber:17}}),showCreateOptionLoader?_react.default.createElement(_reactNative.ActivityIndicator,{size:"small",color:theme.colors.background.base,__self:_this,__source:{fileName:_jsxFileName,lineNumber:308,columnNumber:21}}):_react.default.createElement(_.Typography,(0,_extends2.default)({fontFamily:"sf400",fontSize:"s",color:"font.grey"},createSearchedOptionLabelStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:313,columnNumber:21}}),createOptionLabel||"Create "+searchQuery+" option")),_react.default.createElement(_.Container,{height:0,__self:_this,__source:{fileName:_jsxFileName,lineNumber:325,columnNumber:15}},_react.default.createElement(_.Input,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:326,columnNumber:17}})),_react.default.createElement(_reactNativeGestureHandler.ScrollView,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:328,columnNumber:15}},filteredOptions.map(function(item,index){var optionLabel=labelExtractor(item,index);var optionValue=valueExtractor(item,index);var isSelectedItem=selectedOptionValue&&selectedOptionValue===optionValue;return _react.default.createElement(DropdownItem,{key:index,label:optionLabel,isSelectedItem:isSelectedItem,defaultDropdownItemHeight:defaultDropdownItemHeight,onPress:function onPress(){return handleItemSelection(item,index);},itemContainerStyle:itemContainerStyle,selectedItemContainerStyle:selectedItemContainerStyle,itemLabelStyle:itemLabelStyle,selectedItemLabelStyle:selectedItemLabelStyle,__self:_this,__source:{fileName:_jsxFileName,lineNumber:335,columnNumber:21}});}))))));};exports.Select=Select;Select.propTypes={label:_propTypes.default.string,options:_propTypes.default.arrayOf(_propTypes.default.shape({label:_propTypes.default.string,value:_propTypes.default.string})).isRequired,placeholder:_propTypes.default.string,emptyOptionsPlaceholder:_propTypes.default.string,labelExtractor:_propTypes.default.func,valueExtractor:_propTypes.default.func,value:_propTypes.default.object,onSelect:_propTypes.default.func,isLoading:_propTypes.default.bool,isSearchable:_propTypes.default.bool,showCreateOption:_propTypes.default.bool,showCreateOptionLoader:_propTypes.default.bool,createOptionLabel:_propTypes.default.string,onPressCreateOption:_propTypes.default.func,labelStyle:_propTypes.default.object,containerStyle:_propTypes.default.object,inputContainerStyle:_propTypes.default.object,dropdownContainerStyle:_propTypes.default.object,itemContainerStyle:_propTypes.default.object,itemLabelStyle:_propTypes.default.object,selectedItemContainerStyle:_propTypes.default.object,selectedItemLabelStyle:_propTypes.default.object,searchInputContainerStyle:_propTypes.default.object,searchInputStyle:_propTypes.default.object,emptyOptionsContainerStyle:_propTypes.default.object,emptyOptionsLabelStyle:_propTypes.default.object,createSearchedOptionContainerStyle:_propTypes.default.object,createSearchedOptionLabelStyle:_propTypes.default.object};Select.defaultProps={label:null,placeholder:"Select Option",emptyOptionsPlaceholder:null,labelExtractor:function labelExtractor(option){return option==null?void 0:option.label;},valueExtractor:function valueExtractor(option){return option==null?void 0:option.value;},value:null,onSelect:function onSelect(){},isLoading:false,isSearchable:false,showCreateOption:false,showCreateOptionLoader:false,createOptionLabel:null,onPressCreateOption:function onPressCreateOption(){}};
@@ -0,0 +1 @@
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.SocialButton=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("@styled-system/prop-types"));var _propTypes2=_interopRequireDefault(require("prop-types"));var _native=require("styled-components/native");var _appleLogo=_interopRequireDefault(require("../../assets/icons/apple-logo.svg"));var _googleLogo=_interopRequireDefault(require("../../assets/icons/google-logo.svg"));var _=require("./");var _excluded=["variant","disabled","labelStyle"];var _this=this,_jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/SocialButton.js";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 SocialButton=function SocialButton(props){var variant=props.variant,disabled=props.disabled,labelStyle=props.labelStyle,rest=(0,_objectWithoutProperties2.default)(props,_excluded);var theme=(0,_react.useContext)(_native.ThemeContext);var capitalize=function capitalize(str){return""+str.charAt(0).toUpperCase()+str.slice(1);};return _react.default.createElement(_.Touchable,(0,_extends2.default)({rippleColor:"black",disabled:disabled,bg:"transparent",height:45,width:"100%",borderRadius:8,borderWidth:1,borderColor:theme.colors.border.black,alignItems:"center",justifyContent:"center"},rest,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:41,columnNumber:5}}),_react.default.createElement(_.Container,{position:"absolute",left:17,__self:_this,__source:{fileName:_jsxFileName,lineNumber:54,columnNumber:7}},variant==="apple"&&_react.default.createElement(_appleLogo.default,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:55,columnNumber:33}}),variant==="google"&&_react.default.createElement(_googleLogo.default,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:56,columnNumber:34}})),_react.default.createElement(_.Typography,(0,_extends2.default)({color:theme.colors.font.primary,fontSize:"m",fontFamily:theme.fonts.sf500},labelStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:58,columnNumber:7}}),"Continue with ",capitalize(variant)));};exports.SocialButton=SocialButton;SocialButton.propTypes=(0,_extends2.default)({},_propTypes.default.buttonStyle,_propTypes.default.flexbox,_propTypes.default.space,_propTypes.default.border,_propTypes.default.layout,_propTypes.default.color,{variant:_propTypes2.default.oneOf(["apple","google"]),disabled:_propTypes2.default.bool,labelStyle:_propTypes2.default.object});
@@ -1 +1 @@
1
- var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.Toast=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 _reactNativeToastMessage=_interopRequireDefault(require("react-native-toast-message"));var _config=require("../config");var _hooks=require("@react-native-community/hooks");var _excluded=["toasterConfig"];var _this=this,_jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/Toast.js";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 globalKeyboardState;var Toast=function Toast(_ref){var toasterConfig=_ref.toasterConfig,rest=(0,_objectWithoutProperties2.default)(_ref,_excluded);var keyboard=(0,_hooks.useKeyboard)();React.useEffect(function(){globalKeyboardState=keyboard;},[keyboard]);return React.createElement(_reactNativeToastMessage.default,(0,_extends2.default)({},rest,{config:(0,_extends2.default)({},_config.defaultToasterConfig,toasterConfig),position:"bottom",__self:_this,__source:{fileName:_jsxFileName,lineNumber:64,columnNumber:5}}));};exports.Toast=Toast;Toast.show=function(params){if(globalKeyboardState.keyboardShown){_reactNativeToastMessage.default.show((0,_extends2.default)({},params,{position:"top"}));}else{_reactNativeToastMessage.default.show(params);}};Toast.hide=_reactNativeToastMessage.default.hide;Toast.propTypes={toasterConfig:_propTypes.default.object};
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.Toast=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 _reactNativeToastMessage=_interopRequireDefault(require("react-native-toast-message"));var _config=require("../config");var _native=require("styled-components/native");var _reactNative=require("react-native");var _success=_interopRequireDefault(require("../../assets/icons/success.svg"));var _warning=_interopRequireDefault(require("../../assets/icons/warning.svg"));var _info=_interopRequireDefault(require("../../assets/icons/info.svg"));var _error=_interopRequireDefault(require("../../assets/icons/error.svg"));var _=require("./");var _excluded=["toasterConfig"];var _this=this,_jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/Toast.js";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 ToastComponent=function ToastComponent(_ref){var type=_ref.type,text1=_ref.text1,text2=_ref.text2;var theme=(0,React.useContext)(_native.ThemeContext);var _useWindowDimensions=(0,_reactNative.useWindowDimensions)(),width=_useWindowDimensions.width;var Icon=function Icon(){switch(type){case"success":return React.createElement(_success.default,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:21,columnNumber:16}});case"warning":return React.createElement(_warning.default,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:23,columnNumber:16}});case"info":return React.createElement(_info.default,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:25,columnNumber:16}});case"error":return React.createElement(_error.default,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:27,columnNumber:16}});}};return React.createElement(_.Container,{width:width-20,height:60,borderRadius:16,bg:theme.colors.background.secondary,flexDirection:"row",alignItems:"center",px:10,mx:10,__self:_this,__source:{fileName:_jsxFileName,lineNumber:31,columnNumber:5}},React.createElement(_.Container,{height:42,width:42,borderRadius:10,bg:theme.colors.toast[type],alignItems:"center",justifyContent:"center",__self:_this,__source:{fileName:_jsxFileName,lineNumber:41,columnNumber:7}},React.createElement(Icon,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:49,columnNumber:9}})),React.createElement(_.Container,{ml:10,__self:_this,__source:{fileName:_jsxFileName,lineNumber:52,columnNumber:7}},text1&&React.createElement(_.Typography,{fontFamily:theme.fonts.sf600,fontSize:"m",fontColor:theme.colors.font.primary,__self:_this,__source:{fileName:_jsxFileName,lineNumber:54,columnNumber:11}},text1),text2&&React.createElement(_.Typography,{fontFamily:theme.fonts.sf400,fontSize:"xs",fontColor:theme.colors.font.secondary,__self:_this,__source:{fileName:_jsxFileName,lineNumber:63,columnNumber:11}},text2)));};ToastComponent.propTypes={type:_propTypes.default.string,text1:_propTypes.default.string,text2:_propTypes.default.string};var Toast=function Toast(_ref2){var toasterConfig=_ref2.toasterConfig,rest=(0,_objectWithoutProperties2.default)(_ref2,_excluded);var customConfig={success:ToastComponent,warning:ToastComponent,info:ToastComponent,error:ToastComponent};return React.createElement(_reactNativeToastMessage.default,(0,_extends2.default)({},rest,{config:(0,_extends2.default)({},_config.defaultToasterConfig,customConfig,toasterConfig),position:"top",__self:_this,__source:{fileName:_jsxFileName,lineNumber:131,columnNumber:5}}));};exports.Toast=Toast;Toast.show=_reactNativeToastMessage.default.show;Toast.hide=_reactNativeToastMessage.default.hide;Toast.propTypes={toasterConfig:_propTypes.default.object};
@@ -1 +1 @@
1
- var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.ToggleSwitch=void 0;var _objectWithoutProperties2=_interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _react=_interopRequireWildcard(require("react"));var _reactNativeSwitchToggle=_interopRequireDefault(require("react-native-switch-toggle"));var _native=require("styled-components/native");var _reactNative=require("react-native");var _propTypes=_interopRequireDefault(require("prop-types"));var _=require("./");var _excluded=["value","onValueChange","label","disabled","labelPosition"];var _this=this,_jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/ToggleSwitch.js";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 Label=function Label(_ref){var label=_ref.label,textStyles=_ref.textStyles;return _react.default.createElement(_.Typography,(0,_extends2.default)({textStyle:"subtext"},textStyles,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:39,columnNumber:5}}),label);};var ToggleSwitch=function ToggleSwitch(_ref2){var value=_ref2.value,onValueChange=_ref2.onValueChange,label=_ref2.label,disabled=_ref2.disabled,labelPosition=_ref2.labelPosition,rest=(0,_objectWithoutProperties2.default)(_ref2,_excluded);var theme=(0,_react.useContext)(_native.ThemeContext);var circleColorOn=disabled?theme.colors.background.grey500:theme.colors.background.white;var circleColorOff=disabled?theme.colors.background.menubackground:theme.colors.background.white;return _react.default.createElement(_.Container,(0,_extends2.default)({flexDirection:"row",borderColor:theme.colors.border.primary,alignItems:"center"},rest.wrapperStyles,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:63,columnNumber:5}}),labelPosition==="left"&&_react.default.createElement(Label,{label:label,textStyles:rest.textStyles,__self:_this,__source:{fileName:_jsxFileName,lineNumber:70,columnNumber:9}}),_react.default.createElement(_reactNativeSwitchToggle.default,(0,_extends2.default)({switchOn:value,onPress:function onPress(){return!disabled&&onValueChange();},circleColorOn:circleColorOn,circleColorOff:circleColorOff,backgroundColorOff:theme.colors.background.grey200,backgroundColorOn:theme.colors.background.grey800,containerStyle:styles.containerStyle,circleStyle:styles.circleStyle},rest.switchStyles,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:72,columnNumber:7}})),labelPosition==="right"&&_react.default.createElement(Label,{label:label,textStyles:rest.textStyles,__self:_this,__source:{fileName:_jsxFileName,lineNumber:84,columnNumber:9}}));};exports.ToggleSwitch=ToggleSwitch;ToggleSwitch.defaultProps={labelPosition:"left",wrapperStyles:{},switchStyles:{},textStyles:{mr:2}};ToggleSwitch.propTypes={label:_propTypes.default.string,labelPosition:_propTypes.default.string,value:_propTypes.default.bool.isRequired,onValueChange:_propTypes.default.func,disabled:_propTypes.default.bool,wrapperStyles:_propTypes.default.object,switchStyles:_propTypes.default.object,textStyles:_propTypes.default.object};Label.propTypes={label:_propTypes.default.string,textStyles:_propTypes.default.object};var styles=_reactNative.StyleSheet.create({containerStyle:{width:38,height:18,borderRadius:10,padding:2},circleStyle:{width:14,height:14,borderRadius:7}});
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.ToggleSwitch=void 0;var _react=_interopRequireWildcard(require("react"));var _native=require("styled-components/native");var _reactNative=require("react-native");var _propTypes=_interopRequireDefault(require("prop-types"));var _reactNativeRemixIcon=_interopRequireDefault(require("react-native-remix-icon"));var _=require("./");var _this=this,_jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/ToggleSwitch.js";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 ToggleSwitch=function ToggleSwitch(_ref){var value=_ref.value,onValueChange=_ref.onValueChange,disabled=_ref.disabled;var theme=(0,_react.useContext)(_native.ThemeContext);var animatedPosition=(0,_react.useRef)(new _reactNative.Animated.Value(value?1:0)).current;(0,_react.useEffect)(function(){startAnimation();},[value]);var startAnimation=function startAnimation(){_reactNative.Animated.timing(animatedPosition,{toValue:value?20:0,duration:300,useNativeDriver:false}).start();};var containerBg=value?"#5E5CE6":"background.grey300";var iconColor=value?"#5E5CE6":theme.colors.font.grey500;return _react.default.createElement(_.Touchable,{disabled:disabled,onPress:function onPress(){return onValueChange(!value);},width:44,height:24,bg:containerBg,justifyContent:"center",px:1,borderRadius:70,opacity:disabled?0.5:1,__self:_this,__source:{fileName:_jsxFileName,lineNumber:57,columnNumber:5}},_react.default.createElement(_reactNative.Animated.View,{style:{transform:[{translateX:animatedPosition}]},__self:_this,__source:{fileName:_jsxFileName,lineNumber:68,columnNumber:7}},_react.default.createElement(_.Container,{bg:"background.white",width:16,height:16,borderRadius:8,justifyContent:"center",alignItems:"center",__self:_this,__source:{fileName:_jsxFileName,lineNumber:69,columnNumber:9}},_react.default.createElement(_reactNativeRemixIcon.default,{name:"ri-"+(value?"check":"close")+"-line",size:12,color:iconColor,__self:_this,__source:{fileName:_jsxFileName,lineNumber:77,columnNumber:11}}))));};exports.ToggleSwitch=ToggleSwitch;ToggleSwitch.propTypes={value:_propTypes.default.bool.isRequired,onValueChange:_propTypes.default.func,disabled:_propTypes.default.bool};
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"Alert",{enumerable:true,get:function get(){return _Alert.Alert;}});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,"Button",{enumerable:true,get:function get(){return _Button.Button;}});Object.defineProperty(exports,"ButtonGroup",{enumerable:true,get:function get(){return _ButtonGroup.ButtonGroup;}});Object.defineProperty(exports,"Card",{enumerable:true,get:function get(){return _Card.Card;}});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,"FlatList",{enumerable:true,get:function get(){return _FlatList.FlatList;}});Object.defineProperty(exports,"Input",{enumerable:true,get:function get(){return _Input.Input;}});Object.defineProperty(exports,"MultiSelect",{enumerable:true,get:function get(){return _MultiSelect.MultiSelect;}});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,"Select",{enumerable:true,get:function get(){return _Select.Select;}});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 _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");
1
+ Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"Alert",{enumerable:true,get:function get(){return _Alert.Alert;}});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,"Button",{enumerable:true,get:function get(){return _Button.Button;}});Object.defineProperty(exports,"ButtonGroup",{enumerable:true,get:function get(){return _ButtonGroup.ButtonGroup;}});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,"FlatList",{enumerable:true,get:function get(){return _FlatList.FlatList;}});Object.defineProperty(exports,"Input",{enumerable:true,get:function get(){return _Input.Input;}});Object.defineProperty(exports,"ListItem",{enumerable:true,get:function get(){return _ListItem.ListItem;}});Object.defineProperty(exports,"MultiSelect",{enumerable:true,get:function get(){return _MultiSelect.MultiSelect;}});Object.defineProperty(exports,"OnBoarding",{enumerable:true,get:function get(){return _OnBoarding.OnBoarding;}});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,"SegmentPicker",{enumerable:true,get:function get(){return _SegmentPicker.SegmentPicker;}});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 _SegmentPicker=require("./SegmentPicker");var _ListItem=require("./ListItem");var _Carousel=require("./Carousel");var _OnBoarding=require("./OnBoarding");var _SearchBar=require("./SearchBar");
@@ -1 +1 @@
1
- var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.defaultToasterConfig=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _react=_interopRequireDefault(require("react"));var _reactNativeToastMessage=_interopRequireWildcard(require("react-native-toast-message"));var _reactNative=require("react-native");var _reactNativeRemixIcon=_interopRequireDefault(require("react-native-remix-icon"));var _theme=require("../theme");var _this=this,_jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/config/toasterConfig.js";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 CloseButton=function CloseButton(){return _react.default.createElement(_reactNative.Pressable,{style:styles.closeButtonStyle,onPress:_reactNativeToastMessage.default.hide,__self:_this,__source:{fileName:_jsxFileName,lineNumber:10,columnNumber:5}},_react.default.createElement(_reactNativeRemixIcon.default,{name:"ri-close-fill",size:25,color:_theme.theme.colors.background.white,__self:_this,__source:{fileName:_jsxFileName,lineNumber:11,columnNumber:7}}));};var defaultToasterConfig={success:function success(props){return _react.default.createElement(_reactNativeToastMessage.BaseToast,(0,_extends2.default)({},props,{leadingIconContainerStyle:styles.toasterBGColor,renderTrailingIcon:function renderTrailingIcon(){return _react.default.createElement(CloseButton,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:25,columnNumber:33}});},contentContainerStyle:styles.contentContainerStyle,text1Style:styles.text1Style,text2Style:styles.text2Style,text1NumberOfLines:10,text2NumberOfLines:10,touchableContainerProps:{style:[styles.touchableContainerProps,styles.successStyle]},__self:_this,__source:{fileName:_jsxFileName,lineNumber:22,columnNumber:5}}));},error:function error(props){return _react.default.createElement(_reactNativeToastMessage.BaseToast,(0,_extends2.default)({},props,{leadingIconContainerStyle:styles.toasterBGColor,renderTrailingIcon:function renderTrailingIcon(){return _react.default.createElement(CloseButton,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:40,columnNumber:33}});},contentContainerStyle:styles.contentContainerStyle,text1Style:styles.text1Style,text2Style:styles.text2Style,text1NumberOfLines:10,text2NumberOfLines:10,touchableContainerProps:{style:[styles.touchableContainerProps,styles.errorStyle]},__self:_this,__source:{fileName:_jsxFileName,lineNumber:37,columnNumber:5}}));},info:function info(props){return _react.default.createElement(_reactNativeToastMessage.BaseToast,(0,_extends2.default)({},props,{leadingIconContainerStyle:styles.toasterBGColor,renderTrailingIcon:function renderTrailingIcon(){return _react.default.createElement(CloseButton,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:55,columnNumber:33}});},contentContainerStyle:styles.contentContainerStyle,text1Style:styles.text1Style,text2Style:styles.text2Style,text1NumberOfLines:10,text2NumberOfLines:10,touchableContainerProps:{style:[styles.touchableContainerProps,styles.infoStyle]},__self:_this,__source:{fileName:_jsxFileName,lineNumber:52,columnNumber:5}}));},warning:function warning(props){return _react.default.createElement(_reactNativeToastMessage.BaseToast,(0,_extends2.default)({},props,{leadingIconContainerStyle:styles.toasterBGColor,renderTrailingIcon:function renderTrailingIcon(){return _react.default.createElement(CloseButton,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:70,columnNumber:33}});},contentContainerStyle:styles.contentContainerStyle,text1Style:styles.text1Style,text2Style:styles.text2Style,text1NumberOfLines:10,text2NumberOfLines:10,touchableContainerProps:{style:[styles.touchableContainerProps,styles.warningStyle]},__self:_this,__source:{fileName:_jsxFileName,lineNumber:67,columnNumber:5}}));}};exports.defaultToasterConfig=defaultToasterConfig;defaultToasterConfig.success.displayName="Success";defaultToasterConfig.error.displayName="Error";var styles=_reactNative.StyleSheet.create({touchableContainerProps:{flexDirection:"row",flex:1,paddingVertical:10,width:340,borderRadius:6,shadowOffset:{width:0,height:0},shadowOpacity:0.1,shadowRadius:6,elevation:2,backgroundColor:"#FFF",borderLeftWidth:5,borderLeftColor:"#D8D8D8"},successStyle:{borderLeftColor:_theme.theme.colors.toast.success,backgroundColor:_theme.theme.colors.background.grey800},errorStyle:{borderLeftColor:_theme.theme.colors.toast.error,backgroundColor:_theme.theme.colors.background.grey800},infoStyle:{borderLeftColor:_theme.theme.colors.toast.info,backgroundColor:_theme.theme.colors.background.grey800},warningStyle:{borderLeftColor:_theme.theme.colors.toast.warning,backgroundColor:_theme.theme.colors.background.grey800},toasterBGColor:{backgroundColor:_theme.theme.colors.background.grey800},contentContainerStyle:{paddingHorizontal:15,backgroundColor:_theme.theme.colors.background.grey800},text1Style:{fontSize:15,fontFamily:_theme.theme.fonts.inter700,color:_theme.theme.colors.font.white},text2Style:{fontSize:16,fontFamily:_theme.theme.fonts.inter700,color:_theme.theme.colors.font.white},closeButtonStyle:{justifyContent:"center",alignItems:"center",paddingRight:10,backgroundColor:_theme.theme.colors.background.grey800,shadowColor:_theme.theme.colors.background.grey800,flexDirection:"row",borderTopRightRadius:6,borderBottomRightRadius:6,shadowOffset:{width:0,height:0},shadowOpacity:0.1,shadowRadius:6,elevation:2}});
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.defaultToasterConfig=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _react=_interopRequireDefault(require("react"));var _reactNativeToastMessage=_interopRequireWildcard(require("react-native-toast-message"));var _reactNative=require("react-native");var _reactNativeRemixIcon=_interopRequireDefault(require("react-native-remix-icon"));var _theme=require("../theme");var _this=this,_jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/config/toasterConfig.js";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 CloseButton=function CloseButton(){return _react.default.createElement(_reactNative.Pressable,{style:styles.closeButtonStyle,onPress:_reactNativeToastMessage.default.hide,__self:_this,__source:{fileName:_jsxFileName,lineNumber:10,columnNumber:5}},_react.default.createElement(_reactNativeRemixIcon.default,{name:"ri-close-fill",size:25,color:_theme.theme.colors.background.white,__self:_this,__source:{fileName:_jsxFileName,lineNumber:11,columnNumber:7}}));};var defaultToasterConfig={success:function success(props){return _react.default.createElement(_reactNativeToastMessage.BaseToast,(0,_extends2.default)({},props,{leadingIconContainerStyle:styles.toasterBGColor,renderTrailingIcon:function renderTrailingIcon(){return _react.default.createElement(CloseButton,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:25,columnNumber:33}});},contentContainerStyle:styles.contentContainerStyle,text1Style:styles.text1Style,text2Style:styles.text2Style,text1NumberOfLines:10,text2NumberOfLines:10,touchableContainerProps:{style:[styles.touchableContainerProps,styles.successStyle]},__self:_this,__source:{fileName:_jsxFileName,lineNumber:22,columnNumber:5}}));},error:function error(props){return _react.default.createElement(_reactNativeToastMessage.BaseToast,(0,_extends2.default)({},props,{leadingIconContainerStyle:styles.toasterBGColor,renderTrailingIcon:function renderTrailingIcon(){return _react.default.createElement(CloseButton,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:40,columnNumber:33}});},contentContainerStyle:styles.contentContainerStyle,text1Style:styles.text1Style,text2Style:styles.text2Style,text1NumberOfLines:10,text2NumberOfLines:10,touchableContainerProps:{style:[styles.touchableContainerProps,styles.errorStyle]},__self:_this,__source:{fileName:_jsxFileName,lineNumber:37,columnNumber:5}}));},info:function info(props){return _react.default.createElement(_reactNativeToastMessage.BaseToast,(0,_extends2.default)({},props,{leadingIconContainerStyle:styles.toasterBGColor,renderTrailingIcon:function renderTrailingIcon(){return _react.default.createElement(CloseButton,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:55,columnNumber:33}});},contentContainerStyle:styles.contentContainerStyle,text1Style:styles.text1Style,text2Style:styles.text2Style,text1NumberOfLines:10,text2NumberOfLines:10,touchableContainerProps:{style:[styles.touchableContainerProps,styles.infoStyle]},__self:_this,__source:{fileName:_jsxFileName,lineNumber:52,columnNumber:5}}));},warning:function warning(props){return _react.default.createElement(_reactNativeToastMessage.BaseToast,(0,_extends2.default)({},props,{leadingIconContainerStyle:styles.toasterBGColor,renderTrailingIcon:function renderTrailingIcon(){return _react.default.createElement(CloseButton,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:70,columnNumber:33}});},contentContainerStyle:styles.contentContainerStyle,text1Style:styles.text1Style,text2Style:styles.text2Style,text1NumberOfLines:10,text2NumberOfLines:10,touchableContainerProps:{style:[styles.touchableContainerProps,styles.warningStyle]},__self:_this,__source:{fileName:_jsxFileName,lineNumber:67,columnNumber:5}}));}};exports.defaultToasterConfig=defaultToasterConfig;defaultToasterConfig.success.displayName="Success";defaultToasterConfig.error.displayName="Error";var styles=_reactNative.StyleSheet.create({touchableContainerProps:{flexDirection:"row",flex:1,paddingVertical:10,width:340,borderRadius:6,shadowOffset:{width:0,height:0},shadowOpacity:0.1,shadowRadius:6,elevation:2,backgroundColor:"#FFF",borderLeftWidth:5,borderLeftColor:"#D8D8D8"},successStyle:{borderLeftColor:_theme.theme.colors.toast.success,backgroundColor:_theme.theme.colors.background.grey800},errorStyle:{borderLeftColor:_theme.theme.colors.toast.error,backgroundColor:_theme.theme.colors.background.grey800},infoStyle:{borderLeftColor:_theme.theme.colors.toast.info,backgroundColor:_theme.theme.colors.background.grey800},warningStyle:{borderLeftColor:_theme.theme.colors.toast.warning,backgroundColor:_theme.theme.colors.background.grey800},toasterBGColor:{backgroundColor:_theme.theme.colors.background.grey800},contentContainerStyle:{paddingHorizontal:15,backgroundColor:_theme.theme.colors.background.grey800},text1Style:{fontSize:15,fontFamily:_theme.theme.fonts.sf700,color:_theme.theme.colors.font.white},text2Style:{fontSize:16,fontFamily:_theme.theme.fonts.sf700,color:_theme.theme.colors.font.white},closeButtonStyle:{justifyContent:"center",alignItems:"center",paddingRight:10,backgroundColor:_theme.theme.colors.background.grey800,shadowColor:_theme.theme.colors.background.grey800,flexDirection:"row",borderTopRightRadius:6,borderBottomRightRadius:6,shadowOffset:{width:0,height:0},shadowOpacity:0.1,shadowRadius:6,elevation:2}});
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"useKeyboard",{enumerable:true,get:function get(){return _useKeyboard.useKeyboard;}});var _useKeyboard=require("./useKeyboard");
1
+ Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"useDebounce",{enumerable:true,get:function get(){return _useDebounce.useDebounce;}});Object.defineProperty(exports,"useKeyboard",{enumerable:true,get:function get(){return _useKeyboard.useKeyboard;}});var _useKeyboard=require("./useKeyboard");var _useDebounce=require("./useDebounce");
@@ -0,0 +1 @@
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.useDebounce=useDebounce;var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _react=require("react");function useDebounce(value,delay){var _useState=(0,_react.useState)(value),_useState2=(0,_slicedToArray2.default)(_useState,2),debouncedValue=_useState2[0],setDebouncedValue=_useState2[1];(0,_react.useEffect)(function(){var handler=setTimeout(function(){setDebouncedValue(value);},delay);return function(){clearTimeout(handler);};},[value,delay]);return debouncedValue;}
@@ -1 +1 @@
1
- var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.theme=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var defaultColors={white:"#ffffff",black:"#000000",base:"#2f3941",danger:"#ff6969",menubackground:"#f4f5f7"};var toastBorderColors={success:"#5cb85c",error:"#d9534f",info:"#5bc0de",warning:"#f0ad4e"};var greyVarients={grey:"#828282",grey100:"#f8f9f9",grey200:"#e9ebed",grey300:"#d8dcde",grey400:"#c2c8cc",grey500:"#87929d",grey600:"#68737d",grey800:"#2f3941"};var colors={font:(0,_extends2.default)({primary:"#1b1f23",secondary:"#828282"},defaultColors,greyVarients),background:(0,_extends2.default)({parentView:"#ffffff",primary:"#ffffff",secondary:"#e4e4e7"},defaultColors,greyVarients),border:(0,_extends2.default)({primary:"#e4e4e7"},greyVarients,defaultColors),toast:(0,_extends2.default)({},toastBorderColors)};var baseTheme={colors:colors,fonts:{inter400:"Inter-Regular",inter700:"Inter-Bold"},lineHeights:[24],fontSizes:{xs:10,s:12,m:14,l:18,xl:24,xxl:32}};baseTheme.lineHeights.note=baseTheme.lineHeights[0]+"px";var theme=(0,_extends2.default)({},baseTheme,{textStyles:{defaultTextStyle:{color:baseTheme.colors.font.primary},header:{color:baseTheme.colors.font.primary,fontSize:baseTheme.fontSizes.l,fontFamily:baseTheme.fonts.inter700},body:{color:baseTheme.colors.font.primary,fontSize:baseTheme.fontSizes.m},subtext:{color:baseTheme.colors.font.primary,fontSize:baseTheme.fontSizes.s},solid:{color:baseTheme.colors.font.white},inverse:{color:baseTheme.colors.font.base},text:{color:baseTheme.colors.font.base}},buttons:{solid:{border:2,borderColor:baseTheme.colors.background.base,backgroundColor:baseTheme.colors.background.base},inverse:{border:2,borderColor:baseTheme.colors.border.base,backgroundColor:baseTheme.colors.background.white},text:{color:baseTheme.colors.font.grey800,backgroundColor:baseTheme.colors.background.white}}});exports.theme=theme;
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.theme=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var defaultColors={white:"#ffffff",black:"#000000",base:"#4557F8",danger:"#ff6969",menubackground:"#F6F6FA"};var toastBorderColors={success:"#00BA88",error:"#F56A58",info:"#276EF1",warning:"#F3CD82"};var greyVariants={grey:"#828282",grey100:"#f8f9f9",grey200:"#e9ebed",grey300:"#d8dcde",grey400:"#c2c8cc",grey500:"#87929d",grey600:"#68737d",grey700:"#49545C",grey800:"#2f3941"};var purpleVariants={purple800:"#342DF4",purple700:"#4557F8",purple600:"#7280FA",purple500:"#5E5CE6"};var greenVariants={green800:"#00956D",green700:"#00BA88",green600:"#33C8A0",green500:"#34C759"};var colors={font:(0,_extends2.default)({primary:"#2F3941",secondary:"#49545C"},defaultColors,greyVariants,purpleVariants,greenVariants),background:(0,_extends2.default)({parentView:"#ffffff",primary:"#ffffff",secondary:"#F6F6FA"},defaultColors,greyVariants,purpleVariants,greenVariants),border:(0,_extends2.default)({primary:"#E9EBED",secondary:"#C2C8CC"},greyVariants,defaultColors,purpleVariants),toast:(0,_extends2.default)({},toastBorderColors)};var baseTheme={colors:colors,fonts:{sf400:"SFProText-Regular",sf500:"SFProText-Medium",sf600:"SFProText-Semibold",sf700:"SFProText-Bold"},lineHeights:[24],fontSizes:{"3xs":10,"2xs":12,xs:13,s:14,m:15,l:16,xl:17,"2xl":18,"3xl":20,"4xl":22,"5xl":30}};baseTheme.lineHeights.note=baseTheme.lineHeights[0]+"px";var theme=(0,_extends2.default)({},baseTheme,{textStyles:{defaultTextStyle:{color:baseTheme.colors.font.primary},header:{color:baseTheme.colors.font.primary,fontSize:baseTheme.fontSizes["3xl"],fontFamily:baseTheme.fonts.sf700},modalHeader:{color:baseTheme.colors.font.black,fontSize:baseTheme.fontSizes["xl"],fontFamily:baseTheme.fonts.sf600},body:{color:baseTheme.colors.font.grey500,fontSize:baseTheme.fontSizes.s},subtext:{color:baseTheme.colors.font.primary,fontSize:baseTheme.fontSizes["2xs"]},solid:{color:baseTheme.colors.font.white},inverse:{color:baseTheme.colors.font.base},text:{color:baseTheme.colors.font.base}},buttons:{solid:{border:2,borderColor:baseTheme.colors.background.base,backgroundColor:baseTheme.colors.background.base},inverse:{border:2,borderColor:baseTheme.colors.border.base,backgroundColor:baseTheme.colors.background.white},text:{color:baseTheme.colors.font.grey800,backgroundColor:baseTheme.colors.background.white}}});exports.theme=theme;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neetoui-rn",
3
- "version": "0.0.124",
3
+ "version": "0.0.127",
4
4
  "main": "lib/index.js",
5
5
  "author": "BigBinary",
6
6
  "license": "MIT",
@@ -56,7 +56,7 @@
56
56
  "react-native-reanimated": "^2.7.0",
57
57
  "react-native-remix-icon": "^0.3.0",
58
58
  "react-native-safe-area-context": "^3.3.2",
59
- "react-native-switch-toggle": "^2.2.1",
59
+ "react-native-snap-carousel": "^3.9.1",
60
60
  "react-native-toast-message": "^2.1.0",
61
61
  "styled-components": "^5.3.3",
62
62
  "styled-system": "^5.1.5"
@@ -96,7 +96,7 @@
96
96
  "eslint-import-resolver-babel-module": "^5.3.1",
97
97
  "eslint-plugin-import": "^2.25.3",
98
98
  "eslint-plugin-jest": "^25.2.4",
99
- "eslint-plugin-neeto": "git+https://neeto_gems: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@github.com/bigbinary/eslint-plugin-neeto#1.0.5",
99
+ "eslint-plugin-neeto": "^1.0.10",
100
100
  "eslint-plugin-prettier": "^4.0.0",
101
101
  "eslint-plugin-promise": "^5.1.1",
102
102
  "eslint-plugin-react": "^7.27.0",
@@ -108,11 +108,13 @@
108
108
  "lint-staged": "^12.0.3",
109
109
  "metro-react-native-babel-preset": "^0.66.2",
110
110
  "prettier": "^2.3.1",
111
+ "ramda": "^0.28.0",
111
112
  "react": "17.0.2",
112
113
  "react-dom": "17.0.2",
113
114
  "react-native": "0.66.2",
114
115
  "react-native-storybook-loader": "^2.0.4",
115
116
  "react-native-svg": "^12.1.1",
117
+ "react-native-svg-transformer": "^1.0.0",
116
118
  "react-native-web": "^0.17.5",
117
119
  "react-native-webview": "11.14.4",
118
120
  "react-test-renderer": "17.0.2",
@@ -160,14 +160,14 @@ export const Alert = () => {
160
160
  padding={20}
161
161
  borderRadius={20}
162
162
  >
163
- <Typography fontFamily="inter700" fontSize="l" color="font.grey800">
163
+ <Typography fontFamily="sf700" fontSize="l" color="font.grey800">
164
164
  {title}
165
165
  </Typography>
166
166
  <Container alignItems="center" justifyContent="center">
167
167
  <Typography
168
168
  textAlign="center"
169
169
  py={20}
170
- fontFamily="inter400"
170
+ fontFamily="sf400"
171
171
  fontSize="l"
172
172
  color="font.grey600"
173
173
  >
@@ -184,7 +184,7 @@ export const Alert = () => {
184
184
  <Button
185
185
  borderWidth={1}
186
186
  variant="inverse"
187
- fontFamily="inter400"
187
+ fontFamily="sf400"
188
188
  fontSize="m"
189
189
  borderRadius={50}
190
190
  minWidth={110}
@@ -199,7 +199,7 @@ export const Alert = () => {
199
199
  )}
200
200
  {button1 && (
201
201
  <Button
202
- fontFamily="inter400"
202
+ fontFamily="sf400"
203
203
  fontSize="m"
204
204
  borderRadius={50}
205
205
  minWidth={110}
@@ -218,7 +218,7 @@ export const Alert = () => {
218
218
  mt={20}
219
219
  borderWidth={1}
220
220
  variant="inverse"
221
- fontFamily="inter400"
221
+ fontFamily="sf400"
222
222
  fontSize="m"
223
223
  borderRadius={50}
224
224
  minWidth={110}
@@ -75,7 +75,7 @@ export const Avatar = ({
75
75
  {...rest}
76
76
  >
77
77
  <Typography
78
- fontFamily="inter700"
78
+ fontFamily="sf700"
79
79
  fontSize={fontSize > 14 ? fontSize : 14}
80
80
  color={fontColor}
81
81
  >
@@ -44,7 +44,7 @@ export const Badge = ({
44
44
  content,
45
45
  size = 21,
46
46
  fontSize = "xs",
47
- fontFamily = "inter400",
47
+ fontFamily = "sf400",
48
48
  color = "font.white",
49
49
  ...rest
50
50
  }) => {
@@ -1,90 +1,114 @@
1
- import * as React from "react";
1
+ import React, { useEffect, useState } from "react";
2
2
  import { StyleSheet, FlatList } from "react-native";
3
3
  import PropTypes from "prop-types";
4
- import { Typography, Container, Touchable } from "@components";
4
+ import { Typography, Container, Touchable, Input } from "@components";
5
5
  import Modal from "react-native-modal";
6
+ import Icon from "react-native-remix-icon";
7
+ import { theme } from "../theme";
6
8
 
7
- const Border = () => {
8
- return <Container bg="border.primary" height="1px" width="100%" />;
9
- };
10
-
11
- const Title = ({ title, bg, hide, titleContainerStyle, titleTextStyle }) => {
9
+ const Title = ({
10
+ title,
11
+ bg,
12
+ isVisible,
13
+ hide,
14
+ titleContainerStyle,
15
+ titleTextStyle,
16
+ contentType,
17
+ canSearch,
18
+ searchText,
19
+ setSearchText,
20
+ }) => {
12
21
  let touchY;
22
+ const [isSearchBarOpen, setSearchBarOpen] = useState(false);
23
+
24
+ useEffect(() => {
25
+ setSearchText("");
26
+ }, [isVisible, setSearchText]);
27
+
13
28
  return (
14
29
  <>
15
30
  <Container
16
- px={2}
17
31
  bg={bg}
18
32
  onTouchStart={e => (touchY = e.nativeEvent.pageY)}
19
33
  onTouchEnd={e => {
20
34
  // Swipe Down Detection
21
35
  if (e.nativeEvent.pageY - touchY > 20) hide();
22
36
  }}
23
- alignItems="center"
24
- py={20}
37
+ pb={12}
25
38
  borderRadius={20}
26
39
  {...titleContainerStyle}
27
40
  >
28
- {title && (
29
- <Typography
30
- color="font.secondary"
31
- fontFamily="inter700"
32
- textStyle="subtext"
33
- {...titleTextStyle}
34
- >
35
- {title}
36
- </Typography>
41
+ <Container flexDirection="row" justifyContent="space-between">
42
+ {title && (
43
+ <Typography textStyle="modalHeader" {...titleTextStyle}>
44
+ {title}
45
+ </Typography>
46
+ )}
47
+ {contentType && (
48
+ <Touchable onPress={hide}>
49
+ <Typography textStyle="modalHeader" color="font.purple600">
50
+ Done
51
+ </Typography>
52
+ </Touchable>
53
+ )}
54
+ {canSearch && !isSearchBarOpen && (
55
+ <Touchable onPress={() => setSearchBarOpen(true)}>
56
+ <Icon
57
+ name="search-line"
58
+ color={theme.colors.background.grey700}
59
+ />
60
+ </Touchable>
61
+ )}
62
+ </Container>
63
+
64
+ {canSearch && isSearchBarOpen && (
65
+ <Container pt={12} flexDirection="row" alignItems="center">
66
+ <Container flex={6} mr={3}>
67
+ <Input
68
+ value={searchText}
69
+ onChangeText={word => setSearchText(word.toLowerCase())}
70
+ placeholder="Search"
71
+ containerStyles={styles.inputContainerStyle}
72
+ LeftIcon={() => {
73
+ return (
74
+ <Icon
75
+ name="search-line"
76
+ size={20}
77
+ color={theme.colors.background.grey800}
78
+ />
79
+ );
80
+ }}
81
+ />
82
+ </Container>
83
+
84
+ <Touchable
85
+ onPress={() => {
86
+ setSearchText("");
87
+ setSearchBarOpen(false);
88
+ }}
89
+ >
90
+ <Typography fontSize="l" fontFamily="sf400" color="font.grey800">
91
+ Cancel
92
+ </Typography>
93
+ </Touchable>
94
+ </Container>
37
95
  )}
38
96
  </Container>
39
- <Border />
40
97
  </>
41
98
  );
42
99
  };
43
100
 
44
101
  Title.propTypes = {
45
102
  title: PropTypes.string,
103
+ isVisible: PropTypes.boolean,
46
104
  hide: PropTypes.func,
47
105
  bg: PropTypes.string,
48
106
  titleContainerStyle: PropTypes.object,
49
107
  titleTextStyle: PropTypes.object,
50
- };
51
-
52
- const ContentRow = React.memo(
53
- ({ label, onPress, bg, isSelected, itemContainerStyle, itemTextStyle }) => {
54
- return (
55
- !!label && (
56
- <>
57
- <Touchable
58
- alignItems="center"
59
- bg={bg}
60
- py={12}
61
- borderRadius={20}
62
- onPress={onPress}
63
- px={2}
64
- {...itemContainerStyle}
65
- >
66
- <Typography
67
- textStyle="body"
68
- fontFamily={isSelected ? "inter700" : "inter400"}
69
- {...itemTextStyle}
70
- >
71
- {label}
72
- </Typography>
73
- </Touchable>
74
- <Border />
75
- </>
76
- )
77
- );
78
- }
79
- );
80
- ContentRow.displayName = "ContentRow";
81
- ContentRow.propTypes = {
82
- label: PropTypes.string,
83
- onPress: PropTypes.func,
84
- bg: PropTypes.string,
85
- isSelected: PropTypes.bool,
86
- itemContainerStyle: PropTypes.object,
87
- itemTextStyle: PropTypes.object,
108
+ contentType: PropTypes.oneOf(["checkbox", null]),
109
+ canSearch: PropTypes.bool,
110
+ searchText: PropTypes.string,
111
+ setSearchText: PropTypes.func,
88
112
  };
89
113
 
90
114
  /**
@@ -114,6 +138,7 @@ ContentRow.propTypes = {
114
138
  * title="PROJECT"
115
139
  * data={data}
116
140
  * selectedItemIndex={selectedItemIndex}
141
+ * ContentRow={() => <CustomComponent />}
117
142
  * />
118
143
  * </Container>
119
144
  * );
@@ -134,11 +159,15 @@ export const BottomSheet = ({
134
159
  children,
135
160
  titleContainerStyle,
136
161
  titleTextStyle,
137
- itemContainerStyle,
138
- itemTextStyle,
139
162
  modalParams,
163
+ HeaderComponent,
164
+ ContentRow,
165
+ contentType,
166
+ canSearch,
140
167
  ...rest
141
168
  }) => {
169
+ const [searchText, setSearchText] = useState("");
170
+
142
171
  return (
143
172
  <Modal
144
173
  style={styles.modalStyle}
@@ -155,35 +184,45 @@ export const BottomSheet = ({
155
184
  flex={1}
156
185
  borderTopRightRadius={20}
157
186
  borderTopLeftRadius={20}
187
+ px={24}
188
+ py={24}
158
189
  {...rest}
159
190
  >
160
191
  <Container>
161
192
  <Title
162
193
  bg={bg}
163
194
  title={title}
195
+ isVisible={isVisible}
164
196
  hide={hide}
165
197
  titleContainerStyle={titleContainerStyle}
166
198
  titleTextStyle={titleTextStyle}
167
- ></Title>
199
+ HeaderComponent={HeaderComponent}
200
+ contentType={contentType}
201
+ canSearch={canSearch}
202
+ searchText={searchText}
203
+ setSearchText={setSearchText}
204
+ />
168
205
 
169
206
  {data && (
170
207
  <FlatList
171
208
  contentContainerStyle={styles.flatListContentContainerStyle}
172
209
  initialNumToRender={data.length}
173
- data={data}
210
+ data={
211
+ searchText
212
+ ? data.filter(word => word.startsWith(searchText))
213
+ : data
214
+ }
174
215
  renderItem={({ item, index }) => {
175
216
  return (
176
217
  <ContentRow
177
218
  isSelected={index === selectedItemIndex}
178
- bg={bg}
179
219
  key={index}
180
220
  onPress={() => {
181
- hide();
221
+ !contentType && hide();
182
222
  onItemPress(index);
183
223
  }}
224
+ id={index}
184
225
  label={item}
185
- itemContainerStyle={itemContainerStyle}
186
- itemTextStyle={itemTextStyle}
187
226
  />
188
227
  );
189
228
  }}
@@ -240,19 +279,15 @@ BottomSheet.propTypes = {
240
279
  * To customise title text styles.
241
280
  */
242
281
  titleTextStyle: PropTypes.object,
243
- /**
244
- * To customise item container styles.
245
- */
246
- itemContainerStyle: PropTypes.object,
247
- /**
248
- * To customise item text styles.
249
- */
250
- itemTextStyle: PropTypes.object,
251
282
  /**
252
283
  * To support more Modal params.
253
284
  */
254
285
  modalParams: PropTypes.object,
255
286
  children: PropTypes.node,
287
+ HeaderComponent: PropTypes.elementType,
288
+ ContentRow: PropTypes.elementType.isRequired,
289
+ contentType: PropTypes.oneOf(["checkbox", null]),
290
+ canSearch: PropTypes.bool,
256
291
  };
257
292
 
258
293
  const styles = StyleSheet.create({
@@ -264,4 +299,8 @@ const styles = StyleSheet.create({
264
299
  alignItems: "flex-end",
265
300
  flexDirection: "row",
266
301
  },
302
+ inputContainerStyle: {
303
+ backgroundColor: "white",
304
+ borderRadius: 10,
305
+ },
267
306
  });