@bigbinary/neetoui-rn 0.0.236 → 0.0.238

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.d.ts CHANGED
@@ -177,7 +177,7 @@ interface BadgeProps extends ViewProps {
177
177
 
178
178
  interface BottomSheetProps extends ViewProps {
179
179
  showCreateOption?: boolean;
180
- CreateItemComponent?: React.ReactNode;
180
+ CreateItemComponent?: React.FC;
181
181
  showCreateOptionLoader?: boolean;
182
182
  createSearchedOptionLabelStyle?: TextProps;
183
183
  createOptionLabel?: string;
@@ -317,6 +317,14 @@ type InputProps = {
317
317
  textAlignVertical?: string;
318
318
  };
319
319
 
320
+ type InputEmailChipProps = {
321
+ disabled?: boolean;
322
+ label?: string;
323
+ emails?: Array<string>;
324
+ delimiters?: Array<string>;
325
+ onUpdate?: (emails: Array<string>) => void;
326
+ }
327
+
320
328
  interface ListItemProps extends ViewProps {
321
329
  LeftComponent?: React.FC;
322
330
  label: string;
@@ -555,6 +563,7 @@ export const FAB: React.FC<FabProps>;
555
563
  export const FlashList: React.FC<FlashListProps>;
556
564
  export const FlatList: React.FC<FlatListProps>;
557
565
  export const Input: React.FC<InputProps>;
566
+ export const InputEmailChip: React.FC<InputEmailChipProps>;
558
567
  export const ListItem: React.FC<ListItemProps>;
559
568
  export const Loader: React.FC<LoaderProps>;
560
569
  export const NotificationPreferenceList: React.FC<NotificationPreferenceListProps>;
@@ -1 +1 @@
1
- var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.BottomSheet=void 0;var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _objectWithoutProperties2=_interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _react=_interopRequireWildcard(require("react"));var _reactNative=require("react-native");var _propTypes=_interopRequireDefault(require("prop-types"));var _reactNativeModal=_interopRequireDefault(require("react-native-modal"));var _reactNativeSafeAreaContext=require("react-native-safe-area-context");var _reactNativeSizeMatters=require("react-native-size-matters");var _=require("./");var _theme=require("../theme");var _excluded=["showCreateOption","CreateItemComponent","showCreateOptionLoader","createSearchedOptionLabelStyle","createOptionLabel","onPressCreateOption","createSearchedOptionContainerStyle","data","title","hide","isVisible","onItemPress","bg","children","titleContainerStyle","titleTextStyle","modalParams","HeaderComponent","ContentRow","contentType","canSearch","onDonePress","disabled","noResultsLabelContainerStyle","noResultsLabelStyle","noResultsLabel","NoResultsComponent","labelExtractor","valueExtractor","selectedItem","onBackdropPress","searchBarProps"];var _this=this,_jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/BottomSheet.jsx";function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj.default=obj;if(cache){cache.set(obj,newObj);}return newObj;}var Title=function Title(_ref){var title=_ref.title,bg=_ref.bg,isVisible=_ref.isVisible,hide=_ref.hide,titleContainerStyle=_ref.titleContainerStyle,titleTextStyle=_ref.titleTextStyle,contentType=_ref.contentType,canSearch=_ref.canSearch,setSearchText=_ref.setSearchText,onDonePress=_ref.onDonePress,searchBarProps=_ref.searchBarProps;var touchY;(0,_react.useEffect)(function(){setSearchText("");},[isVisible,setSearchText]);return _react.default.createElement(_.Container,(0,_extends2.default)({bg:bg,borderRadius:(0,_reactNativeSizeMatters.moderateScale)(20),pb:(0,_reactNativeSizeMatters.moderateScale)(12),onTouchStart:function onTouchStart(e){return touchY=e.nativeEvent.pageY;},onTouchEnd:function onTouchEnd(e){if(e.nativeEvent.pageY-touchY>20)hide();}},titleContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:39,columnNumber:5}}),_react.default.createElement(_.Container,{flexDirection:"row",justifyContent:"space-between",mb:(0,_reactNativeSizeMatters.moderateScale)(16),__self:_this,__source:{fileName:_jsxFileName,lineNumber:50,columnNumber:7}},title&&_react.default.createElement(_.Typography,(0,_extends2.default)({textStyle:"modalHeader"},titleTextStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:56,columnNumber:11}}),title),contentType&&_react.default.createElement(_.Touchable,{onPress:function onPress(){hide();onDonePress();},__self:_this,__source:{fileName:_jsxFileName,lineNumber:61,columnNumber:11}},_react.default.createElement(_.Typography,{color:"font.purple500",textStyle:"modalHeader",__self:_this,__source:{fileName:_jsxFileName,lineNumber:67,columnNumber:13}},"Done"))),canSearch&&_react.default.createElement(_.SearchBar,(0,_extends2.default)({debounceDelay:200,placeholder:"Search",showCancelButton:false,onChangeText:setSearchText,onCancel:function onCancel(){setSearchText("");}},searchBarProps,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:74,columnNumber:9}})));};Title.propTypes={title:_propTypes.default.string,isVisible:_propTypes.default.bool,hide:_propTypes.default.func,bg:_propTypes.default.string,titleContainerStyle:_propTypes.default.object,titleTextStyle:_propTypes.default.object,contentType:_propTypes.default.oneOf(["checkbox",null]),canSearch:_propTypes.default.bool,setSearchText:_propTypes.default.func,onDonePress:_propTypes.default.func,searchBarProps:_propTypes.default.object};var BottomSheet=function BottomSheet(_ref2){var showCreateOption=_ref2.showCreateOption,CreateItemComponent=_ref2.CreateItemComponent,showCreateOptionLoader=_ref2.showCreateOptionLoader,createSearchedOptionLabelStyle=_ref2.createSearchedOptionLabelStyle,createOptionLabel=_ref2.createOptionLabel,onPressCreateOption=_ref2.onPressCreateOption,createSearchedOptionContainerStyle=_ref2.createSearchedOptionContainerStyle,_ref2$data=_ref2.data,data=_ref2$data===void 0?[]:_ref2$data,title=_ref2.title,hide=_ref2.hide,isVisible=_ref2.isVisible,onItemPress=_ref2.onItemPress,bg=_ref2.bg,children=_ref2.children,titleContainerStyle=_ref2.titleContainerStyle,titleTextStyle=_ref2.titleTextStyle,modalParams=_ref2.modalParams,HeaderComponent=_ref2.HeaderComponent,ContentRow=_ref2.ContentRow,contentType=_ref2.contentType,canSearch=_ref2.canSearch,onDonePress=_ref2.onDonePress,disabled=_ref2.disabled,noResultsLabelContainerStyle=_ref2.noResultsLabelContainerStyle,noResultsLabelStyle=_ref2.noResultsLabelStyle,noResultsLabel=_ref2.noResultsLabel,NoResultsComponent=_ref2.NoResultsComponent,labelExtractor=_ref2.labelExtractor,valueExtractor=_ref2.valueExtractor,selectedItem=_ref2.selectedItem,_onBackdropPress=_ref2.onBackdropPress,searchBarProps=_ref2.searchBarProps,rest=(0,_objectWithoutProperties2.default)(_ref2,_excluded);var _useState=(0,_react.useState)(""),_useState2=(0,_slicedToArray2.default)(_useState,2),searchText=_useState2[0],setSearchText=_useState2[1];var getLabel=function getLabel(item,index){return(item==null?void 0:item.label)||labelExtractor(item,index)||item;};var generateData=function generateData(){if(searchText.length){return data.filter(function(item){return getLabel(item).toLowerCase().includes(searchText.toLowerCase());});}return data;};var hideCreateComponent=function hideCreateComponent(){var filteredItemCount=generateData().filter(function(data){return getLabel(data).toLocaleLowerCase()===searchText.toLocaleLowerCase();}).length;return filteredItemCount>0;};var checkIsSelected=function checkIsSelected(item){var itemValue=(item==null?void 0:item.value)||valueExtractor(item)||item;var selectedItemValue=(selectedItem==null?void 0:selectedItem.value)||valueExtractor(selectedItem)||selectedItem;return itemValue===selectedItemValue;};return _react.default.createElement(_reactNativeModal.default,(0,_extends2.default)({avoidKeyboard:true,hideModalContentWhileAnimating:true,useNativeDriver:true,isVisible:isVisible,style:styles.modalStyle,onRequestClose:hide,onBackdropPress:function onBackdropPress(){_onBackdropPress();hide();}},modalParams,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:212,columnNumber:5}}),_react.default.createElement(_reactNativeSafeAreaContext.SafeAreaView,{style:styles.safeAreaView,__self:_this,__source:{fileName:_jsxFileName,lineNumber:225,columnNumber:7}},_react.default.createElement(_.Container,(0,_extends2.default)({bg:bg,borderTopLeftRadius:(0,_reactNativeSizeMatters.moderateScale)(20),borderTopRightRadius:(0,_reactNativeSizeMatters.moderateScale)(20),flexShrink:1,p:(0,_reactNativeSizeMatters.moderateScale)(16)},rest,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:226,columnNumber:9}}),title&&_react.default.createElement(Title,{HeaderComponent:HeaderComponent,bg:bg,canSearch:canSearch,contentType:contentType,hide:hide,isVisible:isVisible,searchBarProps:searchBarProps,searchText:searchText,setSearchText:setSearchText,title:title,titleContainerStyle:titleContainerStyle,titleTextStyle:titleTextStyle,onDonePress:onDonePress,__self:_this,__source:{fileName:_jsxFileName,lineNumber:235,columnNumber:13}}),data&&_react.default.createElement(_reactNative.FlatList,{data:generateData(),initialNumToRender:data.length,keyExtractor:function keyExtractor(_item,index){return index;},ListFooterComponent:_react.default.createElement(_.Container,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:257,columnNumber:17}},children,!!searchText&&!generateData().length&&!showCreateOption&&(NoResultsComponent?_react.default.createElement(NoResultsComponent,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:263,columnNumber:23}}):_react.default.createElement(_.Container,(0,_extends2.default)({alignItems:"center",mb:(0,_reactNativeSizeMatters.moderateScale)(2),py:(0,_reactNativeSizeMatters.moderateScale)(2)},noResultsLabelContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:265,columnNumber:23}}),_react.default.createElement(_.Typography,(0,_extends2.default)({color:"font.grey",fontFamily:"sf600",fontSize:"s"},noResultsLabelStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:271,columnNumber:25}}),noResultsLabel||"No options found"))),!disabled&&!hideCreateComponent()&&(showCreateOptionLoader?_react.default.createElement(_.Loader,{color:_theme.theme.colors.background.base,__self:_this,__source:{fileName:_jsxFileName,lineNumber:284,columnNumber:23}}):!!searchText&&showCreateOption&&_react.default.createElement(_.Container,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:288,columnNumber:25}},CreateItemComponent?_react.default.createElement(CreateItemComponent,{searchText:searchText,__self:_this,__source:{fileName:_jsxFileName,lineNumber:290,columnNumber:29}}):_react.default.createElement(_.Touchable,(0,_extends2.default)({alignItems:"center",height:(0,_reactNativeSizeMatters.moderateScale)(40),justifyContent:"center",onPress:function onPress(){return onPressCreateOption(searchText);}},createSearchedOptionContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:292,columnNumber:29}}),_react.default.createElement(_.Typography,(0,_extends2.default)({color:"font.grey",fontFamily:"sf400",fontSize:"s"},createSearchedOptionLabelStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:299,columnNumber:31}}),createOptionLabel||"Create "+searchText+" option"))))),renderItem:function renderItem(_ref3){var item=_ref3.item,index=_ref3.index;return _react.default.createElement(ContentRow,{index:index,isSelected:checkIsSelected(item),item:item,key:index,onPress:function onPress(){!contentType&&hide();onItemPress({index:index,item:item});},__self:_this,__source:{fileName:_jsxFileName,lineNumber:316,columnNumber:17}});},onScrollBeginDrag:_reactNative.Keyboard.dismiss,__self:_this,__source:{fileName:_jsxFileName,lineNumber:252,columnNumber:13}}))));};exports.BottomSheet=BottomSheet;BottomSheet.defaultProps={bg:"background.primary",showCreateOption:false,showCreateOptionLoader:false,createOptionLabel:null,onPressCreateOption:function onPressCreateOption(){},CreateItemComponent:null,onDonePress:function onDonePress(){},valueExtractor:function valueExtractor(){},labelExtractor:function labelExtractor(){},onBackdropPress:function onBackdropPress(){},searchBarProps:{}};BottomSheet.propTypes={data:_propTypes.default.array,title:_propTypes.default.string,isVisible:_propTypes.default.bool,hide:_propTypes.default.func,onItemPress:_propTypes.default.func,onDonePress:_propTypes.default.func,bg:_propTypes.default.string,titleContainerStyle:_propTypes.default.object,titleTextStyle:_propTypes.default.object,showCreateOption:_propTypes.default.bool,showCreateOptionLoader:_propTypes.default.bool,createOptionLabel:_propTypes.default.string,onPressCreateOption:_propTypes.default.func,CreateItemComponent:_propTypes.default.node,createSearchedOptionLabelStyle:_propTypes.default.object,disabled:_propTypes.default.bool,createSearchedOptionContainerStyle:_propTypes.default.object,noResultsLabelContainerStyle:_propTypes.default.object,noResultsLabelStyle:_propTypes.default.object,noResultsLabel:_propTypes.default.string,NoResultsComponent:_propTypes.default.node,labelExtractor:_propTypes.default.func,valueExtractor:_propTypes.default.func,onBackdropPress:_propTypes.default.func,selectedItem:_propTypes.default.oneOfType([_propTypes.default.object,_propTypes.default.string]),searchBarProps:_propTypes.default.object,modalParams:_propTypes.default.object,children:_propTypes.default.node,HeaderComponent:_propTypes.default.elementType,ContentRow:_propTypes.default.elementType,contentType:_propTypes.default.oneOf(["checkbox",null]),canSearch:_propTypes.default.bool};var styles=_reactNative.StyleSheet.create({safeAreaView:{maxHeight:"70%",backgroundColor:_theme.theme.colors.background.primary,borderTopRightRadius:(0,_reactNativeSizeMatters.moderateScale)(20),borderTopLeftRadius:(0,_reactNativeSizeMatters.moderateScale)(20)},modalStyle:{margin:0,justifyContent:"flex-end",flex:1},inputContainerStyle:{backgroundColor:"white",borderRadius:(0,_reactNativeSizeMatters.moderateScale)(10)}});
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.BottomSheet=void 0;var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _objectWithoutProperties2=_interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _react=_interopRequireWildcard(require("react"));var _reactNative=require("react-native");var _propTypes=_interopRequireDefault(require("prop-types"));var _reactNativeModal=_interopRequireDefault(require("react-native-modal"));var _reactNativeSafeAreaContext=require("react-native-safe-area-context");var _reactNativeSizeMatters=require("react-native-size-matters");var _=require("./");var _theme=require("../theme");var _excluded=["showCreateOption","CreateItemComponent","showCreateOptionLoader","createSearchedOptionLabelStyle","createOptionLabel","onPressCreateOption","createSearchedOptionContainerStyle","data","title","hide","isVisible","onItemPress","bg","children","titleContainerStyle","titleTextStyle","modalParams","HeaderComponent","ContentRow","contentType","canSearch","onDonePress","disabled","noResultsLabelContainerStyle","noResultsLabelStyle","noResultsLabel","NoResultsComponent","labelExtractor","valueExtractor","selectedItem","onBackdropPress","searchBarProps"];var _this=this,_jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/BottomSheet.jsx";function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj.default=obj;if(cache){cache.set(obj,newObj);}return newObj;}var Title=function Title(_ref){var title=_ref.title,bg=_ref.bg,isVisible=_ref.isVisible,hide=_ref.hide,titleContainerStyle=_ref.titleContainerStyle,titleTextStyle=_ref.titleTextStyle,contentType=_ref.contentType,canSearch=_ref.canSearch,setSearchText=_ref.setSearchText,onDonePress=_ref.onDonePress,searchBarProps=_ref.searchBarProps;var touchY;(0,_react.useEffect)(function(){setSearchText("");},[isVisible,setSearchText]);return _react.default.createElement(_.Container,(0,_extends2.default)({bg:bg,borderRadius:(0,_reactNativeSizeMatters.moderateScale)(20),pb:(0,_reactNativeSizeMatters.moderateScale)(12),onTouchStart:function onTouchStart(e){return touchY=e.nativeEvent.pageY;},onTouchEnd:function onTouchEnd(e){if(e.nativeEvent.pageY-touchY>20)hide();}},titleContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:39,columnNumber:5}}),_react.default.createElement(_.Container,{flexDirection:"row",justifyContent:"space-between",mb:(0,_reactNativeSizeMatters.moderateScale)(16),__self:_this,__source:{fileName:_jsxFileName,lineNumber:50,columnNumber:7}},title&&_react.default.createElement(_.Typography,(0,_extends2.default)({textStyle:"modalHeader"},titleTextStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:56,columnNumber:11}}),title),contentType&&_react.default.createElement(_.Touchable,{onPress:function onPress(){hide();onDonePress();},__self:_this,__source:{fileName:_jsxFileName,lineNumber:61,columnNumber:11}},_react.default.createElement(_.Typography,{color:"font.purple500",textStyle:"modalHeader",__self:_this,__source:{fileName:_jsxFileName,lineNumber:67,columnNumber:13}},"Done"))),canSearch&&_react.default.createElement(_.SearchBar,(0,_extends2.default)({debounceDelay:200,placeholder:"Search",showCancelButton:false,onChangeText:setSearchText,onCancel:function onCancel(){setSearchText("");}},searchBarProps,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:74,columnNumber:9}})));};Title.propTypes={title:_propTypes.default.string,isVisible:_propTypes.default.bool,hide:_propTypes.default.func,bg:_propTypes.default.string,titleContainerStyle:_propTypes.default.object,titleTextStyle:_propTypes.default.object,contentType:_propTypes.default.oneOf(["checkbox",null]),canSearch:_propTypes.default.bool,setSearchText:_propTypes.default.func,onDonePress:_propTypes.default.func,searchBarProps:_propTypes.default.object};var BottomSheet=function BottomSheet(_ref2){var showCreateOption=_ref2.showCreateOption,CreateItemComponent=_ref2.CreateItemComponent,showCreateOptionLoader=_ref2.showCreateOptionLoader,createSearchedOptionLabelStyle=_ref2.createSearchedOptionLabelStyle,createOptionLabel=_ref2.createOptionLabel,onPressCreateOption=_ref2.onPressCreateOption,createSearchedOptionContainerStyle=_ref2.createSearchedOptionContainerStyle,_ref2$data=_ref2.data,data=_ref2$data===void 0?[]:_ref2$data,title=_ref2.title,hide=_ref2.hide,isVisible=_ref2.isVisible,onItemPress=_ref2.onItemPress,bg=_ref2.bg,children=_ref2.children,titleContainerStyle=_ref2.titleContainerStyle,titleTextStyle=_ref2.titleTextStyle,modalParams=_ref2.modalParams,HeaderComponent=_ref2.HeaderComponent,ContentRow=_ref2.ContentRow,contentType=_ref2.contentType,canSearch=_ref2.canSearch,onDonePress=_ref2.onDonePress,disabled=_ref2.disabled,noResultsLabelContainerStyle=_ref2.noResultsLabelContainerStyle,noResultsLabelStyle=_ref2.noResultsLabelStyle,noResultsLabel=_ref2.noResultsLabel,NoResultsComponent=_ref2.NoResultsComponent,labelExtractor=_ref2.labelExtractor,valueExtractor=_ref2.valueExtractor,selectedItem=_ref2.selectedItem,_onBackdropPress=_ref2.onBackdropPress,searchBarProps=_ref2.searchBarProps,rest=(0,_objectWithoutProperties2.default)(_ref2,_excluded);var _useState=(0,_react.useState)(""),_useState2=(0,_slicedToArray2.default)(_useState,2),searchText=_useState2[0],setSearchText=_useState2[1];var getLabel=function getLabel(item,index){return(item==null?void 0:item.label)||labelExtractor(item,index)||item;};var generateData=function generateData(){if(searchText.length){return data.filter(function(item){return getLabel(item).toLowerCase().includes(searchText.toLowerCase());});}return data;};var hideCreateComponent=function hideCreateComponent(){var filteredItemCount=generateData().filter(function(data){return getLabel(data).toLocaleLowerCase()===searchText.toLocaleLowerCase();}).length;return filteredItemCount>0;};var checkIsSelected=function checkIsSelected(item){var itemValue=(item==null?void 0:item.value)||valueExtractor(item)||item;var selectedItemValue=(selectedItem==null?void 0:selectedItem.value)||valueExtractor(selectedItem)||selectedItem;return itemValue===selectedItemValue;};return _react.default.createElement(_reactNativeModal.default,(0,_extends2.default)({avoidKeyboard:true,hideModalContentWhileAnimating:true,useNativeDriver:true,isVisible:isVisible,style:styles.modalStyle,onRequestClose:hide,onBackdropPress:function onBackdropPress(){_onBackdropPress();hide();}},modalParams,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:212,columnNumber:5}}),_react.default.createElement(_reactNativeSafeAreaContext.SafeAreaView,{style:styles.safeAreaView,__self:_this,__source:{fileName:_jsxFileName,lineNumber:225,columnNumber:7}},_react.default.createElement(_.Container,(0,_extends2.default)({bg:bg,borderTopLeftRadius:(0,_reactNativeSizeMatters.moderateScale)(20),borderTopRightRadius:(0,_reactNativeSizeMatters.moderateScale)(20),flexShrink:1,p:(0,_reactNativeSizeMatters.moderateScale)(16)},rest,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:226,columnNumber:9}}),title&&_react.default.createElement(Title,{HeaderComponent:HeaderComponent,bg:bg,canSearch:canSearch,contentType:contentType,hide:hide,isVisible:isVisible,searchBarProps:searchBarProps,searchText:searchText,setSearchText:setSearchText,title:title,titleContainerStyle:titleContainerStyle,titleTextStyle:titleTextStyle,onDonePress:onDonePress,__self:_this,__source:{fileName:_jsxFileName,lineNumber:235,columnNumber:13}}),data&&_react.default.createElement(_reactNative.FlatList,{data:generateData(),initialNumToRender:data.length,keyExtractor:function keyExtractor(_item,index){return index;},ListFooterComponent:_react.default.createElement(_.Container,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:257,columnNumber:17}},children,!!searchText&&!generateData().length&&!showCreateOption&&(NoResultsComponent?_react.default.createElement(NoResultsComponent,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:263,columnNumber:23}}):_react.default.createElement(_.Container,(0,_extends2.default)({alignItems:"center",mb:(0,_reactNativeSizeMatters.moderateScale)(2),py:(0,_reactNativeSizeMatters.moderateScale)(2)},noResultsLabelContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:265,columnNumber:23}}),_react.default.createElement(_.Typography,(0,_extends2.default)({color:"font.grey",fontFamily:"sf600",fontSize:"s"},noResultsLabelStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:271,columnNumber:25}}),noResultsLabel||"No options found"))),!disabled&&!hideCreateComponent()&&(showCreateOptionLoader?_react.default.createElement(_.Loader,{color:_theme.theme.colors.background.base,__self:_this,__source:{fileName:_jsxFileName,lineNumber:284,columnNumber:23}}):!!searchText&&showCreateOption&&_react.default.createElement(_.Container,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:288,columnNumber:25}},CreateItemComponent?_react.default.createElement(CreateItemComponent,{searchText:searchText,__self:_this,__source:{fileName:_jsxFileName,lineNumber:290,columnNumber:29}}):_react.default.createElement(_.Touchable,(0,_extends2.default)({alignItems:"center",height:(0,_reactNativeSizeMatters.moderateScale)(40),justifyContent:"center",onPress:function onPress(){return onPressCreateOption(searchText);}},createSearchedOptionContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:292,columnNumber:29}}),_react.default.createElement(_.Typography,(0,_extends2.default)({color:"font.grey",fontFamily:"sf400",fontSize:"s"},createSearchedOptionLabelStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:299,columnNumber:31}}),createOptionLabel||"Create "+searchText+" option"))))),renderItem:function renderItem(_ref3){var item=_ref3.item,index=_ref3.index;return _react.default.createElement(ContentRow,{index:index,isSelected:checkIsSelected(item),item:item,key:index,onPress:function onPress(){!contentType&&hide();onItemPress({index:index,item:item});},__self:_this,__source:{fileName:_jsxFileName,lineNumber:316,columnNumber:17}});},onScrollBeginDrag:_reactNative.Keyboard.dismiss,__self:_this,__source:{fileName:_jsxFileName,lineNumber:252,columnNumber:13}}))));};exports.BottomSheet=BottomSheet;BottomSheet.defaultProps={bg:"background.primary",showCreateOption:false,showCreateOptionLoader:false,createOptionLabel:null,onPressCreateOption:function onPressCreateOption(){},CreateItemComponent:null,onDonePress:function onDonePress(){},valueExtractor:function valueExtractor(){},labelExtractor:function labelExtractor(){},onBackdropPress:function onBackdropPress(){},searchBarProps:{}};BottomSheet.propTypes={data:_propTypes.default.array,title:_propTypes.default.string,isVisible:_propTypes.default.bool,hide:_propTypes.default.func,onItemPress:_propTypes.default.func,onDonePress:_propTypes.default.func,bg:_propTypes.default.string,titleContainerStyle:_propTypes.default.object,titleTextStyle:_propTypes.default.object,showCreateOption:_propTypes.default.bool,showCreateOptionLoader:_propTypes.default.bool,createOptionLabel:_propTypes.default.string,onPressCreateOption:_propTypes.default.func,CreateItemComponent:_propTypes.default.func,createSearchedOptionLabelStyle:_propTypes.default.object,disabled:_propTypes.default.bool,createSearchedOptionContainerStyle:_propTypes.default.object,noResultsLabelContainerStyle:_propTypes.default.object,noResultsLabelStyle:_propTypes.default.object,noResultsLabel:_propTypes.default.string,NoResultsComponent:_propTypes.default.node,labelExtractor:_propTypes.default.func,valueExtractor:_propTypes.default.func,onBackdropPress:_propTypes.default.func,selectedItem:_propTypes.default.oneOfType([_propTypes.default.object,_propTypes.default.string]),searchBarProps:_propTypes.default.object,modalParams:_propTypes.default.object,children:_propTypes.default.node,HeaderComponent:_propTypes.default.elementType,ContentRow:_propTypes.default.elementType,contentType:_propTypes.default.oneOf(["checkbox",null]),canSearch:_propTypes.default.bool};var styles=_reactNative.StyleSheet.create({safeAreaView:{maxHeight:"70%",backgroundColor:_theme.theme.colors.background.primary,borderTopRightRadius:(0,_reactNativeSizeMatters.moderateScale)(20),borderTopLeftRadius:(0,_reactNativeSizeMatters.moderateScale)(20)},modalStyle:{margin:0,justifyContent:"flex-end",flex:1},inputContainerStyle:{backgroundColor:"white",borderRadius:(0,_reactNativeSizeMatters.moderateScale)(10)}});
@@ -1 +1 @@
1
- var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.Carousel=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _react=_interopRequireWildcard(require("react"));var _reactNative=require("react-native");var _propTypes=_interopRequireDefault(require("prop-types"));var _reactNativeSizeMatters=require("react-native-size-matters");var _reactNativeSnapCarousel=_interopRequireWildcard(require("react-native-snap-carousel"));var _=require("./");var _this=this,_jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/Carousel.jsx";function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj.default=obj;if(cache){cache.set(obj,newObj);}return newObj;}var _Dimensions$get=_reactNative.Dimensions.get("screen"),width=_Dimensions$get.width;var Carousel=function Carousel(_ref){var itemArray=_ref.itemArray,renderItem=_ref.renderItem,carouselRef=_ref.carouselRef,_onSnapToItem=_ref.onSnapToItem,_ref$containerStyle=_ref.containerStyle,containerStyle=_ref$containerStyle===void 0?{}:_ref$containerStyle;var _useWindowDimensions=(0,_reactNative.useWindowDimensions)(),width=_useWindowDimensions.width;var _useState=(0,_react.useState)(0),_useState2=(0,_slicedToArray2.default)(_useState,2),activeIndex=_useState2[0],setActiveIndex=_useState2[1];return _react.default.createElement(_.Container,(0,_extends2.default)({flex:1},containerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:55,columnNumber:5}}),_react.default.createElement(_reactNativeSnapCarousel.default,{data:itemArray,itemWidth:width,ref:carouselRef,renderItem:renderItem,sliderWidth:width,onSnapToItem:function onSnapToItem(index){_onSnapToItem(index);setActiveIndex(index);},__self:_this,__source:{fileName:_jsxFileName,lineNumber:56,columnNumber:7}}),_react.default.createElement(_reactNativeSnapCarousel.Pagination,{activeDotIndex:activeIndex,dotContainerStyle:styles.dotContainerStyle,dotStyle:styles.dotStyle,dotsLength:itemArray.length,inactiveDotOpacity:(0,_reactNativeSizeMatters.moderateScale)(1),inactiveDotScale:(0,_reactNativeSizeMatters.moderateScale)(1),inactiveDotStyle:styles.inactiveDotStyle,__self:_this,__source:{fileName:_jsxFileName,lineNumber:67,columnNumber:7}}));};exports.Carousel=Carousel;var styles=_reactNative.StyleSheet.create({image:{height:width/(0,_reactNativeSizeMatters.moderateScale)(1.8),width:width/(0,_reactNativeSizeMatters.moderateScale)(1.8),resizeMode:"contain",borderRadius:(0,_reactNativeSizeMatters.moderateScale)(20)},indicator:{height:(0,_reactNativeSizeMatters.moderateScale)(12),width:(0,_reactNativeSizeMatters.moderateScale)(12),borderRadius:(0,_reactNativeSizeMatters.moderateScale)(10),marginVertical:(0,_reactNativeSizeMatters.moderateScale)(20),marginHorizontal:(0,_reactNativeSizeMatters.moderateScale)(5),backgroundColor:"#49545C",borderColor:"#FFFFFF",borderWidth:(0,_reactNativeSizeMatters.moderateScale)(2)},dotStyle:{width:(0,_reactNativeSizeMatters.moderateScale)(10),height:(0,_reactNativeSizeMatters.moderateScale)(10),borderRadius:(0,_reactNativeSizeMatters.moderateScale)(5),marginRight:(0,_reactNativeSizeMatters.moderateScale)(8),backgroundColor:"#2F3941"},inactiveDotStyle:{backgroundColor:"#D9D9D9"},dotContainerStyle:{marginHorizontal:0}});Carousel.propTypes={itemArray:_propTypes.default.array.isRequired,renderItem:_propTypes.default.func.isRequired,onSnapToItem:_propTypes.default.func,carouselRef:_propTypes.default.object,containerStyle:_propTypes.default.object};
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.Carousel=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _react=_interopRequireWildcard(require("react"));var _reactNative=require("react-native");var _propTypes=_interopRequireDefault(require("prop-types"));var _reactNativeSizeMatters=require("react-native-size-matters");var _reactNativeSnapCarousel=_interopRequireWildcard(require("react-native-snap-carousel"));var _=require("./");var _this=this,_jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/Carousel.jsx";function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj.default=obj;if(cache){cache.set(obj,newObj);}return newObj;}var _Dimensions$get=_reactNative.Dimensions.get("screen"),width=_Dimensions$get.width;var Carousel=function Carousel(_ref){var itemArray=_ref.itemArray,renderItem=_ref.renderItem,carouselRef=_ref.carouselRef,_onSnapToItem=_ref.onSnapToItem,_ref$containerStyle=_ref.containerStyle,containerStyle=_ref$containerStyle===void 0?{}:_ref$containerStyle;var _useWindowDimensions=(0,_reactNative.useWindowDimensions)(),width=_useWindowDimensions.width;var _useState=(0,_react.useState)(0),_useState2=(0,_slicedToArray2.default)(_useState,2),activeIndex=_useState2[0],setActiveIndex=_useState2[1];return _react.default.createElement(_.Container,(0,_extends2.default)({flex:1},containerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:55,columnNumber:5}}),_react.default.createElement(_reactNativeSnapCarousel.default,{data:itemArray,itemWidth:width,ref:carouselRef,renderItem:renderItem,sliderWidth:width,onSnapToItem:function onSnapToItem(index){_onSnapToItem(index);setActiveIndex(index);},__self:_this,__source:{fileName:_jsxFileName,lineNumber:56,columnNumber:7}}),_react.default.createElement(_reactNativeSnapCarousel.Pagination,{activeDotIndex:activeIndex,dotContainerStyle:styles.dotContainerStyle,dotStyle:styles.dotStyle,dotsLength:itemArray.length,inactiveDotOpacity:(0,_reactNativeSizeMatters.moderateScale)(1),inactiveDotScale:(0,_reactNativeSizeMatters.moderateScale)(1),inactiveDotStyle:styles.inactiveDotStyle,__self:_this,__source:{fileName:_jsxFileName,lineNumber:67,columnNumber:7}}));};exports.Carousel=Carousel;var styles=_reactNative.StyleSheet.create({image:{height:width/(0,_reactNativeSizeMatters.moderateScale)(1.8),width:width/(0,_reactNativeSizeMatters.moderateScale)(1.8),resizeMode:"contain",borderRadius:(0,_reactNativeSizeMatters.moderateScale)(20)},indicator:{height:(0,_reactNativeSizeMatters.moderateScale)(12),width:(0,_reactNativeSizeMatters.moderateScale)(12),borderRadius:(0,_reactNativeSizeMatters.moderateScale)(10),marginVertical:(0,_reactNativeSizeMatters.moderateScale)(20),marginHorizontal:(0,_reactNativeSizeMatters.moderateScale)(5),backgroundColor:"#49545C",borderColor:"#FFFFFF",borderWidth:(0,_reactNativeSizeMatters.moderateScale)(2)},dotStyle:{width:(0,_reactNativeSizeMatters.moderateScale)(10),height:(0,_reactNativeSizeMatters.moderateScale)(10),borderRadius:(0,_reactNativeSizeMatters.moderateScale)(5),marginHorizontal:(0,_reactNativeSizeMatters.moderateScale)(4),backgroundColor:"#2F3941"},inactiveDotStyle:{backgroundColor:"#D9D9D9"},dotContainerStyle:{marginHorizontal:0}});Carousel.propTypes={itemArray:_propTypes.default.array.isRequired,renderItem:_propTypes.default.func.isRequired,onSnapToItem:_propTypes.default.func,carouselRef:_propTypes.default.object,containerStyle:_propTypes.default.object};
@@ -1 +1 @@
1
- var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.Chip=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var React=_interopRequireWildcard(require("react"));var _propTypes=_interopRequireDefault(require("prop-types"));var _reactNativeRemixIcon=_interopRequireDefault(require("react-native-remix-icon"));var _reactNativeSizeMatters=require("react-native-size-matters");var _=require("./");var _this=this,_jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/Chip.jsx";function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj.default=obj;if(cache){cache.set(obj,newObj);}return newObj;}var variantStyleObj={solid:{bg:"background.grey200"},outlined:{bg:"background.white",border:"1px solid",borderColor:"border.grey400"}};var Chip=function Chip(_ref){var label=_ref.label,LeftIcon=_ref.LeftIcon,variant=_ref.variant,labelColor=_ref.labelColor,closeIconBackground=_ref.closeIconBackground,closeIconColor=_ref.closeIconColor,onClose=_ref.onClose,onChipPress=_ref.onChipPress,isDisabled=_ref.isDisabled,closeIconSize=_ref.closeIconSize,closeIcon=_ref.closeIcon,containerStyle=_ref.containerStyle,closeIconContainerStyle=_ref.closeIconContainerStyle;return React.createElement(_.Touchable,(0,_extends2.default)({alignItems:"center",borderRadius:(0,_reactNativeSizeMatters.moderateScale)(20),disabled:!onChipPress||isDisabled,flexDirection:"row",p:(0,_reactNativeSizeMatters.moderateScale)(2),onPress:onChipPress},variant&&variantStyleObj[variant],isDisabled&&{opacity:0.5},containerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:69,columnNumber:3}}),LeftIcon&&React.createElement(LeftIcon,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:80,columnNumber:18}}),React.createElement(_.Typography,{color:labelColor,fontFamily:"sf400",mx:(0,_reactNativeSizeMatters.moderateScale)(2),__self:_this,__source:{fileName:_jsxFileName,lineNumber:81,columnNumber:5}},label),onClose&&React.createElement(_.Touchable,(0,_extends2.default)({bg:closeIconBackground,borderRadius:(0,_reactNativeSizeMatters.moderateScale)(10),disabled:isDisabled,onPress:onClose},closeIconContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:85,columnNumber:7}}),React.createElement(_reactNativeRemixIcon.default,{color:closeIconColor,name:closeIcon,size:closeIconSize,__self:_this,__source:{fileName:_jsxFileName,lineNumber:92,columnNumber:9}})));};exports.Chip=Chip;Chip.defaultProps={variant:"outlined",labelColor:"font.primary",closeIconBackground:"background.grey500",closeIconColor:"white",isDisabled:false,closeIconSize:(0,_reactNativeSizeMatters.moderateScale)(14),closeIcon:"ri-close-fill"};Chip.propTypes={label:_propTypes.default.string.isRequired,LeftIcon:_propTypes.default.elementType,variant:_propTypes.default.string,labelColor:_propTypes.default.string,closeIconBackground:_propTypes.default.string,closeIconColor:_propTypes.default.string,onClose:_propTypes.default.func,closeIconSize:_propTypes.default.number,closeIcon:_propTypes.default.string,onChipPress:_propTypes.default.func,isDisabled:_propTypes.default.bool,containerStyle:_propTypes.default.object,closeIconContainerStyle:_propTypes.default.object};
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.Chip=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _react=_interopRequireDefault(require("react"));var _propTypes=_interopRequireDefault(require("prop-types"));var _reactNativeRemixIcon=_interopRequireDefault(require("react-native-remix-icon"));var _reactNativeSizeMatters=require("react-native-size-matters");var _=require("./");var _this=this,_jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/Chip.jsx";var variantStyleObj={solid:{bg:"background.grey200"},outlined:{bg:"background.white",border:"1px solid",borderColor:"border.grey200"}};var commonContainerStyle={alignItems:"center",borderRadius:(0,_reactNativeSizeMatters.moderateScale)(20),flexDirection:"row"};var Chip=function Chip(_ref){var label=_ref.label,LeftIcon=_ref.LeftIcon,variant=_ref.variant,labelColor=_ref.labelColor,closeIconBackground=_ref.closeIconBackground,closeIconColor=_ref.closeIconColor,onClose=_ref.onClose,onChipPress=_ref.onChipPress,isDisabled=_ref.isDisabled,closeIconSize=_ref.closeIconSize,closeIcon=_ref.closeIcon,containerStyle=_ref.containerStyle,closeIconContainerStyle=_ref.closeIconContainerStyle;return _react.default.createElement(_.Container,(0,_extends2.default)({},commonContainerStyle,variant&&variantStyleObj[variant],isDisabled&&{opacity:0.5},containerStyle,{m:0,p:0,__self:_this,__source:{fileName:_jsxFileName,lineNumber:75,columnNumber:3}}),_react.default.createElement(_.Touchable,(0,_extends2.default)({disabled:!onChipPress||isDisabled,overflow:"hidden",px:(0,_reactNativeSizeMatters.moderateScale)(4),py:(0,_reactNativeSizeMatters.moderateScale)(2),onPress:onChipPress},commonContainerStyle,containerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:83,columnNumber:5}}),LeftIcon&&_react.default.createElement(LeftIcon,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:92,columnNumber:20}}),_react.default.createElement(_.Typography,{color:labelColor,fontFamily:"sf400",mx:(0,_reactNativeSizeMatters.moderateScale)(2),__self:_this,__source:{fileName:_jsxFileName,lineNumber:93,columnNumber:7}},label)),onClose&&_react.default.createElement(_.Container,(0,_extends2.default)({bg:closeIconBackground,borderRadius:closeIconSize,m:(0,_reactNativeSizeMatters.moderateScale)(3),p:(0,_reactNativeSizeMatters.moderateScale)(1)},closeIconContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:98,columnNumber:7}}),_react.default.createElement(_.Touchable,{disabled:isDisabled,onPress:onClose,__self:_this,__source:{fileName:_jsxFileName,lineNumber:105,columnNumber:9}},_react.default.createElement(_reactNativeRemixIcon.default,{color:closeIconColor,name:closeIcon,size:closeIconSize,__self:_this,__source:{fileName:_jsxFileName,lineNumber:106,columnNumber:11}}))));};exports.Chip=Chip;Chip.defaultProps={variant:"outlined",labelColor:"font.primary",closeIconBackground:"background.grey500",closeIconColor:"white",isDisabled:false,closeIconSize:(0,_reactNativeSizeMatters.moderateScale)(14),closeIcon:"ri-close-fill"};Chip.propTypes={label:_propTypes.default.string.isRequired,LeftIcon:_propTypes.default.elementType,variant:_propTypes.default.string,labelColor:_propTypes.default.string,closeIconBackground:_propTypes.default.string,closeIconColor:_propTypes.default.string,onClose:_propTypes.default.func,closeIconSize:_propTypes.default.number,closeIcon:_propTypes.default.string,onChipPress:_propTypes.default.func,isDisabled:_propTypes.default.bool,containerStyle:_propTypes.default.object,closeIconContainerStyle:_propTypes.default.object};
@@ -0,0 +1 @@
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.InputEmailChip=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _toConsumableArray2=_interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _react=_interopRequireWildcard(require("react"));var _reactNative=require("react-native");var _propTypes=_interopRequireDefault(require("prop-types"));var _reactNativeSizeMatters=require("react-native-size-matters");var _native=require("styled-components/native");var _=require("./");var _utils=require("../utils/utils");var _this=this,_jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/InputEmailChip.jsx";function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj.default=obj;if(cache){cache.set(obj,newObj);}return newObj;}var gap=(0,_reactNativeSizeMatters.moderateScale)(4);var chipWrapperStyle={pt:gap};var getChipContainerStyle=function getChipContainerStyle(isReadyForDeletion){return{borderColor:isReadyForDeletion?"border.danger":"border.grey200"};};var InputEmailChip=function InputEmailChip(_ref){var disabled=_ref.disabled,label=_ref.label,_ref$emails=_ref.emails,emails=_ref$emails===void 0?[]:_ref$emails,onUpdate=_ref.onUpdate,_ref$delimiters=_ref.delimiters,delimiters=_ref$delimiters===void 0?[" ",","]:_ref$delimiters;var theme=(0,_react.useContext)(_native.ThemeContext);var inputRef=(0,_react.useRef)();var _useState=(0,_react.useState)(""),_useState2=(0,_slicedToArray2.default)(_useState,2),textValue=_useState2[0],setTextValue=_useState2[1];var _useState3=(0,_react.useState)(false),_useState4=(0,_slicedToArray2.default)(_useState3,2),shouldShowInput=_useState4[0],setShouldShowInput=_useState4[1];var _useState5=(0,_react.useState)(-1),_useState6=(0,_slicedToArray2.default)(_useState5,2),emailIndexForDeletion=_useState6[0],setEmailIndexForDeletion=_useState6[1];var handleKeyPress=function handleKeyPress(event){var _ref2=event.nativeEvent||{},key=_ref2.key;if(!(textValue===""&&key==="Backspace"&&emails.length>0))return;if(emailIndexForDeletion===-1){setEmailIndexForDeletion(emails.length-1);}else{removeEmail({lastOne:true});setEmailIndexForDeletion(-1);}};var handleSubmitEditing=function handleSubmitEditing(event){var _ref3=event.nativeEvent||{},text=_ref3.text;setEmailIndexForDeletion(-1);checkAndUpdateEmails(text);};var handleTextChange=function handleTextChange(text){if(!(0,_utils.endsWithChars)(text,delimiters)){setEmailIndexForDeletion(-1);setTextValue(text);return;}checkAndUpdateEmails(text);};var handleInputTouchStart=function handleInputTouchStart(){return setEmailIndexForDeletion(-1);};var handleTouchStart=function handleTouchStart(){var _inputRef$current;if(disabled)return;if(!((_inputRef$current=inputRef.current)!=null&&_inputRef$current.isFocused())){var _inputRef$current2;(_inputRef$current2=inputRef.current)==null?void 0:_inputRef$current2.focus();}};var handleOnFocus=function handleOnFocus(){return setShouldShowInput(true);};var handleOnBlur=function handleOnBlur(){if(textValue.trim()===""){setShouldShowInput(false);}};var checkAndUpdateEmails=function checkAndUpdateEmails(text){var emailCandidate=(0,_utils.trimChars)(text,delimiters);if(emailCandidate!==""&&(0,_utils.isValidEmail)(emailCandidate)&&!emails.includes(emailCandidate)){var _emails=[].concat((0,_toConsumableArray2.default)(emails),[emailCandidate]);setTextValue("");onUpdate&&onUpdate(_emails);}else{setTextValue(text);}};var removeEmail=function removeEmail(_ref4){var email=_ref4.email,_ref4$lastOne=_ref4.lastOne,lastOne=_ref4$lastOne===void 0?false:_ref4$lastOne;var indexOfEmail=lastOne?emails.length-1:emails.indexOf(email);if(indexOfEmail!==-1){var _emails=(0,_toConsumableArray2.default)(emails);_emails.splice(indexOfEmail,1);onUpdate&&onUpdate(_emails);}};var inputProps={autoCorrect:false,fontSize:"xs",returnKeyType:"done",autoCapitalize:"none",keyboardType:"email-address",padding:0,minHeight:(0,_reactNativeSizeMatters.moderateScale)(26),selectionColor:emailIndexForDeletion===-1?theme.colors.font.base:"transparent"};return _react.default.createElement(_.Container,{flexDirection:"row",minHeight:(0,_reactNativeSizeMatters.moderateScale)(30),py:(0,_reactNativeSizeMatters.moderateScale)(2),width:"100%",onTouchStart:handleTouchStart,__self:_this,__source:{fileName:_jsxFileName,lineNumber:123,columnNumber:5}},!!label&&_react.default.createElement(_.Typography,{color:disabled?"font.grey400":"font.grey600",fontSize:"xs",mr:(0,_reactNativeSizeMatters.moderateScale)(8),mt:_reactNative.Platform.select({android:(0,_reactNativeSizeMatters.moderateScale)(10),ios:(0,_reactNativeSizeMatters.moderateScale)(8)}),__self:_this,__source:{fileName:_jsxFileName,lineNumber:131,columnNumber:9}},label),_react.default.createElement(_.Container,{alignItems:"center",flex:1,flexDirection:"row",flexWrap:"wrap",__self:_this,__source:{fileName:_jsxFileName,lineNumber:143,columnNumber:7}},emails.map(function(email,index){return _react.default.createElement(_.Container,(0,_extends2.default)({key:email},chipWrapperStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:150,columnNumber:11}}),_react.default.createElement(_.Chip,{isDisabled:disabled,label:email,containerStyle:getChipContainerStyle(index===emailIndexForDeletion),onClose:disabled?null:function(){return removeEmail({email:email});},__self:_this,__source:{fileName:_jsxFileName,lineNumber:151,columnNumber:13}}));}),!disabled&&_react.default.createElement(_.Container,(0,_extends2.default)({alignItems:"center",flex:1,justifyContent:"center",minWidth:(0,_reactNativeSizeMatters.moderateScale)(160),paddingTop:_reactNative.Platform.select({ios:gap,android:(0,_reactNativeSizeMatters.moderateScale)(7)})},shouldShowInput?{}:{height:0},{__self:_this,__source:{fileName:_jsxFileName,lineNumber:162,columnNumber:11}}),_react.default.createElement(_.Input,{noBorder:true,disabled:disabled,value:textValue,inputProps:(0,_extends2.default)({},inputProps,{ref:inputRef,onKeyPress:handleKeyPress,onSubmitEditing:handleSubmitEditing,onTouchStart:handleInputTouchStart,onFocus:handleOnFocus,onBlur:handleOnBlur}),onChangeText:handleTextChange,__self:_this,__source:{fileName:_jsxFileName,lineNumber:173,columnNumber:13}}))));};exports.InputEmailChip=InputEmailChip;InputEmailChip.propTypes={disabled:_propTypes.default.bool,label:_propTypes.default.string,emails:_propTypes.default.arrayOf(_propTypes.default.string),delimiters:_propTypes.default.arrayOf(_propTypes.default.string),onUpdate:_propTypes.default.func};
@@ -1 +1 @@
1
- var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.MultiSelect=void 0;var _toConsumableArray2=_interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));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 _taggedTemplateLiteralLoose2=_interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));var _react=_interopRequireWildcard(require("react"));var _reactNative=require("react-native");var _propTypes=_interopRequireDefault(require("prop-types"));var _reactNativeReanimated=_interopRequireWildcard(require("react-native-reanimated"));var _reactNativeRemixIcon=_interopRequireDefault(require("react-native-remix-icon"));var _reactNativeSizeMatters=require("react-native-size-matters");var _native=_interopRequireWildcard(require("styled-components/native"));var _styledSystem=require("styled-system");var _=require("./");var _excluded=["options","label","value","labelExtractor","valueExtractor","onSelect","deletedValue","isLoading","isSearchable","showCreateOption","labelStyle","containerStyle","inputContainerStyle","dropdownContainerStyle","itemContainerStyle","multiSelectedItemContainerStyle","multiSelectedItemLabelStyle","selectedValue","CreateItemComponent","showCreateOptionLoader","createSearchedOptionLabelStyle","onPressCreateOption","createSearchedOptionContainerStyle","onDonePress","disabled","noResultsLabelContainerStyle","noResultsLabelStyle","noResultsLabel","NoResultsComponent","maxItemSize","moreItemLabelContainerStyle","moreItemLabelStyle","MoreItemComponent","onBackdropPress","searchBarProps","confirmationAlertObj"];var _templateObject,_this=this,_jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/MultiSelect.jsx";function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj.default=obj;if(cache){cache.set(obj,newObj);}return newObj;}var Typography=_native.default.Text(_templateObject||(_templateObject=(0,_taggedTemplateLiteralLoose2.default)(["\n ","\n ","\n ","\n ","\n ","\n ","\n ","\n ","\n"])),_styledSystem.textStyle,_styledSystem.space,_styledSystem.layout,_styledSystem.flexbox,_styledSystem.typography,_styledSystem.color,_styledSystem.position,(0,_styledSystem.system)({textDecoration:{property:"textDecoration",cssProperty:"textDecoration"},textTransform:{property:"textTransform",cssProperty:"textTransform"}}));var MultiSelectItem=function MultiSelectItem(_ref){var label=_ref.label,onUnselect=_ref.onUnselect,multiSelectedItemContainerStyle=_ref.multiSelectedItemContainerStyle,multiSelectedItemLabelStyle=_ref.multiSelectedItemLabelStyle,disabled=_ref.disabled,_ref$confirmationAler=_ref.confirmationAlertObj,confirmationAlertObj=_ref$confirmationAler===void 0?{}:_ref$confirmationAler;var theme=(0,_react.useContext)(_native.ThemeContext);var _confirmationAlertObj=confirmationAlertObj.alertTitle,alertTitle=_confirmationAlertObj===void 0?"Delete tag":_confirmationAlertObj,_confirmationAlertObj2=confirmationAlertObj.alertDescription,alertDescription=_confirmationAlertObj2===void 0?"Are you sure you want to delete tag: "+label+"? This action cannot be undone.":_confirmationAlertObj2,_confirmationAlertObj3=confirmationAlertObj.alertConfirmButtonLabel,alertConfirmButtonLabel=_confirmationAlertObj3===void 0?"Proceed":_confirmationAlertObj3,_confirmationAlertObj4=confirmationAlertObj.showDeleteAlertConfirmation,showDeleteAlertConfirmation=_confirmationAlertObj4===void 0?true:_confirmationAlertObj4;var handleItemUnSelection=function handleItemUnSelection(){showDeleteAlertConfirmation?_.Alert.show({title:alertTitle,description:alertDescription,buttons:[{label:alertConfirmButtonLabel,variant:"danger",onPress:function onPress(){onUnselect();}},{label:"Cancel",onPress:function onPress(){}}]}):onUnselect();};return _react.default.createElement(_.Container,(0,_extends2.default)({alignItems:"center",bg:"background.secondary",borderRadius:(0,_reactNativeSizeMatters.moderateScale)(12),flexDirection:"row",justifyContent:"space-between",mr:(0,_reactNativeSizeMatters.moderateScale)(4),mt:(0,_reactNativeSizeMatters.moderateScale)(4),px:(0,_reactNativeSizeMatters.moderateScale)(10),py:(0,_reactNativeSizeMatters.moderateScale)(4)},multiSelectedItemContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:83,columnNumber:5}}),_react.default.createElement(Typography,(0,_extends2.default)({color:"font.grey800",fontFamily:"sf400",fontSize:"s",mr:(0,_reactNativeSizeMatters.moderateScale)(2)},multiSelectedItemLabelStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:95,columnNumber:7}}),label),!disabled&&_react.default.createElement(_reactNative.TouchableWithoutFeedback,{disabled:disabled,onPress:handleItemUnSelection,__self:_this,__source:{fileName:_jsxFileName,lineNumber:105,columnNumber:9}},_react.default.createElement(_reactNativeRemixIcon.default,{color:theme.colors.font.grey800,name:"ri-close-line",size:(0,_reactNativeSizeMatters.moderateScale)(20),__self:_this,__source:{fileName:_jsxFileName,lineNumber:109,columnNumber:11}})));};MultiSelectItem.propTypes={label:_propTypes.default.string,onUnselect:_propTypes.default.func,multiSelectedItemContainerStyle:_propTypes.default.object,multiSelectedItemLabelStyle:_propTypes.default.object,disabled:_propTypes.default.bool,confirmationAlertObj:_propTypes.default.object};var AnimatedLabel=_reactNativeReanimated.default.createAnimatedComponent(Typography);var MultiSelect=function MultiSelect(_ref2){var options=_ref2.options,label=_ref2.label,value=_ref2.value,labelExtractor=_ref2.labelExtractor,valueExtractor=_ref2.valueExtractor,onSelect=_ref2.onSelect,deletedValue=_ref2.deletedValue,isLoading=_ref2.isLoading,isSearchable=_ref2.isSearchable,showCreateOption=_ref2.showCreateOption,labelStyle=_ref2.labelStyle,containerStyle=_ref2.containerStyle,inputContainerStyle=_ref2.inputContainerStyle,dropdownContainerStyle=_ref2.dropdownContainerStyle,itemContainerStyle=_ref2.itemContainerStyle,multiSelectedItemContainerStyle=_ref2.multiSelectedItemContainerStyle,multiSelectedItemLabelStyle=_ref2.multiSelectedItemLabelStyle,selectedValue=_ref2.selectedValue,CreateItemComponent=_ref2.CreateItemComponent,showCreateOptionLoader=_ref2.showCreateOptionLoader,createSearchedOptionLabelStyle=_ref2.createSearchedOptionLabelStyle,onPressCreateOption=_ref2.onPressCreateOption,createSearchedOptionContainerStyle=_ref2.createSearchedOptionContainerStyle,onDonePress=_ref2.onDonePress,disabled=_ref2.disabled,noResultsLabelContainerStyle=_ref2.noResultsLabelContainerStyle,noResultsLabelStyle=_ref2.noResultsLabelStyle,noResultsLabel=_ref2.noResultsLabel,NoResultsComponent=_ref2.NoResultsComponent,maxItemSize=_ref2.maxItemSize,moreItemLabelContainerStyle=_ref2.moreItemLabelContainerStyle,moreItemLabelStyle=_ref2.moreItemLabelStyle,MoreItemComponent=_ref2.MoreItemComponent,onBackdropPress=_ref2.onBackdropPress,searchBarProps=_ref2.searchBarProps,confirmationAlertObj=_ref2.confirmationAlertObj,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 animatedLabelValue=(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 optionValue=valueExtractor(item,index);var isItemAlreadySelected=Boolean(value==null?void 0:value.find(function(selectedItem){return valueExtractor(selectedItem)===optionValue;}));return!isItemAlreadySelected;}).filter(function(item,index){var optionLabel=labelExtractor(item,index);if(searchQuery.length===0)return true;return formatStr(optionLabel).includes(formatStr(searchQuery));});var isOptionsEmpty=!options||(options==null?void 0:options.length)===0;var isSearchedOptionsEmpty=searchQuery.length>0&&filteredOptions.length===0;var emptyOptionsPlaceholderHeight=(0,_reactNativeSizeMatters.moderateScale)(40);var emptySearchedOptionsHeight=(0,_reactNativeSizeMatters.moderateScale)(40);var searchInputHeight=(0,_reactNativeSizeMatters.moderateScale)(35);var multipleOptionsSelected=(value==null?void 0:value.length)>0;var defaultDropdownItemHeight=(itemContainerStyle==null?void 0:itemContainerStyle.height)||(0,_reactNativeSizeMatters.moderateScale)(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+(0,_reactNativeSizeMatters.moderateScale)(10):0)+(isOptionsEmpty&&!(isSearchedOptionsEmpty&&showCreateOption)?emptyOptionsPlaceholderHeight:0)+(isSearchedOptionsEmpty&&showCreateOption?emptySearchedOptionsHeight:0);var getValue=function getValue(item,index){return(item==null?void 0:item.value)||valueExtractor(item,index)||item;};var getLabel=function getLabel(item,index){return(item==null?void 0:item.label)||labelExtractor(item,index)||item;};var handleCheckbox=function handleCheckbox(item){var oldData=(0,_toConsumableArray2.default)(value);var index=value.findIndex(function(data,index){return getValue(data,index)===getValue(item);});if(index===-1){oldData.push(item);}else{oldData.splice(index,1);}onSelect(oldData);};var CheckBoxContent=function CheckBoxContent(_ref3){var onPress=_ref3.onPress,item=_ref3.item,index=_ref3.index;var itemIndex=value.findIndex(function(data,i){return getValue(data,i)===getValue(item,index);});return _react.default.createElement(_.Container,{py:(0,_reactNativeSizeMatters.moderateScale)(12),__self:_this,__source:{fileName:_jsxFileName,lineNumber:285,columnNumber:7}},_react.default.createElement(_.CheckBox,{checked:itemIndex!==-1,disabled:disabled,label:(item==null?void 0:item.label)||labelExtractor(item,index)||item,onSelect:onPress,__self:_this,__source:{fileName:_jsxFileName,lineNumber:286,columnNumber:9}}));};var handleOpenDropdown=function handleOpenDropdown(){_reactNative.Keyboard.dismiss();setSearchQuery("");if(!showDropdown){setShowDropdown(true);}if(showDropdown){dropdownAnimatedHeight.value=0;}};var handleUnSelection=function handleUnSelection(item){var newValue=value.filter(function(selectedItem){return valueExtractor(selectedItem)!==valueExtractor(item);});onSelect(newValue);deletedValue(item);};(0,_react.useEffect)(function(){animatedLabelValue.value=(0,_reactNativeReanimated.withTiming)(value.length||showDropdown?1:0,{duration:250});},[value,showDropdown]);(0,_react.useEffect)(function(){if(showDropdown){dropdownAnimatedHeight.value=dropdownHeight;}},[showDropdown,dropdownHeight]);CheckBoxContent.propTypes={onPress:_propTypes.default.func,item:_propTypes.default.object,index:_propTypes.default.number};var animatedStyles=(0,_reactNativeReanimated.useAnimatedStyle)(function(){var _f=function _f(){return{top:(0,_reactNativeReanimated.interpolate)(animatedLabelValue.value,[0,1],[7,-5]),fontSize:(0,_reactNativeReanimated.interpolate)(animatedLabelValue.value,[0,1],[17,13]),color:"font.grey600"};};_f._closure={interpolate:_reactNativeReanimated.interpolate,animatedLabelValue:animatedLabelValue};_f.asString="function _f(){const{interpolate,animatedLabelValue}=jsThis._closure;{return{top:interpolate(animatedLabelValue.value,[0,1],[7,-5]),fontSize:interpolate(animatedLabelValue.value,[0,1],[17,13]),color:\"font.grey600\"};}}";_f.__workletHash=10991286228666;_f.__location="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/MultiSelect.jsx (337:42)";_f.__optimalization=3;return _f;}());return _react.default.createElement(_.Container,(0,_extends2.default)({},containerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:344,columnNumber:5}}),_react.default.createElement(_reactNative.TouchableWithoutFeedback,{disabled:isLoading,onPress:handleOpenDropdown,__self:_this,__source:{fileName:_jsxFileName,lineNumber:345,columnNumber:7}},_react.default.createElement(_.Container,(0,_extends2.default)({borderColor:showDropdown?"border.base":"border.grey400",borderRadius:(0,_reactNativeSizeMatters.moderateScale)(12),borderWidth:(0,_reactNativeSizeMatters.moderateScale)(1),minHeight:(0,_reactNativeSizeMatters.moderateScale)(58),p:(0,_reactNativeSizeMatters.moderateScale)(10),pr:(0,_reactNativeSizeMatters.moderateScale)(8),pt:(0,_reactNativeSizeMatters.moderateScale)(12)},inputContainerStyle,rest,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:349,columnNumber:9}}),_react.default.createElement(_.Container,{alignItems:"center",flexDirection:"row",justifyContent:"space-between",__self:_this,__source:{fileName:_jsxFileName,lineNumber:360,columnNumber:11}},_react.default.createElement(AnimatedLabel,{position:"absolute",zIndex:1,style:[animatedStyles,(0,_extends2.default)({marginLeft:(0,_reactNativeSizeMatters.moderateScale)(2)},labelStyle)],__self:_this,__source:{fileName:_jsxFileName,lineNumber:365,columnNumber:13}},label),!multipleOptionsSelected&&_react.default.createElement(_.Container,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:375,columnNumber:42}}),multipleOptionsSelected&&_react.default.createElement(_.Container,{flexDirection:"row",flexWrap:"wrap",maxWidth:"85%",mt:(0,_reactNativeSizeMatters.moderateScale)(16),onStartShouldSetResponder:function onStartShouldSetResponder(){return true;},__self:_this,__source:{fileName:_jsxFileName,lineNumber:377,columnNumber:15}},value==null?void 0:value.slice(0,maxItemSize).map(function(item,index){return _react.default.createElement(MultiSelectItem,{confirmationAlertObj:confirmationAlertObj,disabled:disabled,key:index,label:getLabel(item),multiSelectedItemLabelStyle:multiSelectedItemLabelStyle,multiSelectedItemContainerStyle:multiSelectedItemContainerStyle,onUnselect:function onUnselect(){return handleUnSelection(item);},__self:_this,__source:{fileName:_jsxFileName,lineNumber:385,columnNumber:19}});}),(value==null?void 0:value.length)>maxItemSize&&(!MoreItemComponent?_react.default.createElement(_.Container,(0,_extends2.default)({alignItems:"center",bg:"background.secondary",borderRadius:(0,_reactNativeSizeMatters.moderateScale)(12),flexDirection:"row",justifyContent:"space-between",m:(0,_reactNativeSizeMatters.moderateScale)(1),px:(0,_reactNativeSizeMatters.moderateScale)(3),py:(0,_reactNativeSizeMatters.moderateScale)(1)},moreItemLabelContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:399,columnNumber:21}}),_react.default.createElement(Typography,(0,_extends2.default)({},moreItemLabelStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:410,columnNumber:23}}),"+",(value==null?void 0:value.length)-maxItemSize," More")):_react.default.createElement(MoreItemComponent,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:415,columnNumber:21}}))),_react.default.createElement(_.Container,{mt:(0,_reactNativeSizeMatters.moderateScale)(10),__self:_this,__source:{fileName:_jsxFileName,lineNumber:419,columnNumber:13}},isLoading?_react.default.createElement(_.Loader,{color:theme.colors.background.base,__self:_this,__source:{fileName:_jsxFileName,lineNumber:421,columnNumber:17}}):_react.default.createElement(_reactNativeRemixIcon.default,{color:"grey",name:"arrow-"+(showDropdown?"up":"down")+"-s-line",size:(0,_reactNativeSizeMatters.moderateScale)(20),__self:_this,__source:{fileName:_jsxFileName,lineNumber:423,columnNumber:17}}))))),_react.default.createElement(_.BottomSheet,{ContentRow:CheckBoxContent,CreateItemComponent:CreateItemComponent,NoResultsComponent:NoResultsComponent,canSearch:isSearchable,contentType:"checkbox",createSearchedOptionContainerStyle:createSearchedOptionContainerStyle,createSearchedOptionLabelStyle:createSearchedOptionLabelStyle,data:options,disabled:disabled,hide:function hide(){return setShowDropdown(false);},isVisible:showDropdown,labelExtractor:labelExtractor,noResultsLabel:noResultsLabel,noResultsLabelContainerStyle:noResultsLabelContainerStyle,noResultsLabelStyle:noResultsLabelStyle,searchBarProps:searchBarProps,showCreateOption:showCreateOption,showCreateOptionLoader:showCreateOptionLoader,title:label,valueExtractor:valueExtractor,onBackdropPress:onBackdropPress,onDonePress:onDonePress,onPressCreateOption:onPressCreateOption,onItemPress:function onItemPress(_ref4){var item=_ref4.item;handleCheckbox(item);selectedValue(item);},__self:_this,__source:{fileName:_jsxFileName,lineNumber:433,columnNumber:7}}));};exports.MultiSelect=MultiSelect;MultiSelect.propTypes={label:_propTypes.default.string,options:_propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.string),_propTypes.default.arrayOf(_propTypes.default.object)]),labelExtractor:_propTypes.default.func,valueExtractor:_propTypes.default.func,value:_propTypes.default.oneOfType([_propTypes.default.string,_propTypes.default.array]),onSelect:_propTypes.default.func,selectedValue:_propTypes.default.func,deletedValue:_propTypes.default.func,isLoading:_propTypes.default.bool,isSearchable:_propTypes.default.bool,onDonePress:_propTypes.default.func,showCreateOption:_propTypes.default.bool,showCreateOptionLoader:_propTypes.default.bool,onPressCreateOption:_propTypes.default.func,labelStyle:_propTypes.default.object,containerStyle:_propTypes.default.object,inputContainerStyle:_propTypes.default.object,dropdownContainerStyle:_propTypes.default.object,itemContainerStyle:_propTypes.default.object,multiSelectedItemContainerStyle:_propTypes.default.object,multiSelectedItemLabelStyle:_propTypes.default.object,confirmationAlertObj:_propTypes.default.object,createSearchedOptionContainerStyle:_propTypes.default.object,createSearchedOptionLabelStyle:_propTypes.default.object,CreateItemComponent:_propTypes.default.node,disabled:_propTypes.default.bool,noResultsLabelContainerStyle:_propTypes.default.object,noResultsLabelStyle:_propTypes.default.object,noResultsLabel:_propTypes.default.string,NoResultsComponent:_propTypes.default.node,maxItemSize:_propTypes.default.number,moreItemLabelContainerStyle:_propTypes.default.object,moreItemLabelStyle:_propTypes.default.object,MoreItemComponent:_propTypes.default.node,onBackdropPress:_propTypes.default.func,searchBarProps:_propTypes.default.object};MultiSelect.defaultProps={label: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(){},selectedValue:function selectedValue(){},deletedValue:function deletedValue(){},isLoading:false,isSearchable:false,showCreateOption:false,showCreateOptionLoader:false,onPressCreateOption:function onPressCreateOption(){},onDonePress:function onDonePress(){},maxItemSize:5,onBackdropPress:function onBackdropPress(){},searchBarProps:{},confirmationAlertObj:{}};
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.MultiSelect=void 0;var _toConsumableArray2=_interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));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 _taggedTemplateLiteralLoose2=_interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));var _react=_interopRequireWildcard(require("react"));var _reactNative=require("react-native");var _propTypes=_interopRequireDefault(require("prop-types"));var _reactNativeReanimated=_interopRequireWildcard(require("react-native-reanimated"));var _reactNativeRemixIcon=_interopRequireDefault(require("react-native-remix-icon"));var _reactNativeSizeMatters=require("react-native-size-matters");var _native=_interopRequireWildcard(require("styled-components/native"));var _styledSystem=require("styled-system");var _=require("./");var _excluded=["options","label","value","labelExtractor","valueExtractor","onSelect","deletedValue","isLoading","isSearchable","showCreateOption","labelStyle","containerStyle","inputContainerStyle","dropdownContainerStyle","itemContainerStyle","multiSelectedItemContainerStyle","multiSelectedItemLabelStyle","selectedValue","CreateItemComponent","showCreateOptionLoader","createSearchedOptionLabelStyle","onPressCreateOption","createSearchedOptionContainerStyle","onDonePress","disabled","noResultsLabelContainerStyle","noResultsLabelStyle","noResultsLabel","NoResultsComponent","maxItemSize","moreItemLabelContainerStyle","moreItemLabelStyle","MoreItemComponent","onBackdropPress","searchBarProps","confirmationAlertObj"];var _templateObject,_this=this,_jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/MultiSelect.jsx";function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj.default=obj;if(cache){cache.set(obj,newObj);}return newObj;}var Typography=_native.default.Text(_templateObject||(_templateObject=(0,_taggedTemplateLiteralLoose2.default)(["\n ","\n ","\n ","\n ","\n ","\n ","\n ","\n ","\n"])),_styledSystem.textStyle,_styledSystem.space,_styledSystem.layout,_styledSystem.flexbox,_styledSystem.typography,_styledSystem.color,_styledSystem.position,(0,_styledSystem.system)({textDecoration:{property:"textDecoration",cssProperty:"textDecoration"},textTransform:{property:"textTransform",cssProperty:"textTransform"}}));var MultiSelectItem=function MultiSelectItem(_ref){var label=_ref.label,onUnselect=_ref.onUnselect,multiSelectedItemContainerStyle=_ref.multiSelectedItemContainerStyle,multiSelectedItemLabelStyle=_ref.multiSelectedItemLabelStyle,disabled=_ref.disabled,_ref$confirmationAler=_ref.confirmationAlertObj,confirmationAlertObj=_ref$confirmationAler===void 0?{}:_ref$confirmationAler;var theme=(0,_react.useContext)(_native.ThemeContext);var _confirmationAlertObj=confirmationAlertObj.alertTitle,alertTitle=_confirmationAlertObj===void 0?"Delete tag":_confirmationAlertObj,_confirmationAlertObj2=confirmationAlertObj.alertDescription,alertDescription=_confirmationAlertObj2===void 0?"Are you sure you want to delete tag: "+label+"? This action cannot be undone.":_confirmationAlertObj2,_confirmationAlertObj3=confirmationAlertObj.alertConfirmButtonLabel,alertConfirmButtonLabel=_confirmationAlertObj3===void 0?"Proceed":_confirmationAlertObj3,_confirmationAlertObj4=confirmationAlertObj.showDeleteAlertConfirmation,showDeleteAlertConfirmation=_confirmationAlertObj4===void 0?true:_confirmationAlertObj4;var handleItemUnSelection=function handleItemUnSelection(){showDeleteAlertConfirmation?_.Alert.show({title:alertTitle,description:alertDescription,buttons:[{label:alertConfirmButtonLabel,variant:"danger",onPress:function onPress(){onUnselect();}},{label:"Cancel",onPress:function onPress(){}}]}):onUnselect();};return _react.default.createElement(_.Container,(0,_extends2.default)({alignItems:"center",bg:"background.secondary",borderRadius:(0,_reactNativeSizeMatters.moderateScale)(12),flexDirection:"row",justifyContent:"space-between",mr:(0,_reactNativeSizeMatters.moderateScale)(4),mt:(0,_reactNativeSizeMatters.moderateScale)(4),px:(0,_reactNativeSizeMatters.moderateScale)(10),py:(0,_reactNativeSizeMatters.moderateScale)(4)},multiSelectedItemContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:83,columnNumber:5}}),_react.default.createElement(Typography,(0,_extends2.default)({color:"font.grey800",fontFamily:"sf400",fontSize:"s",mr:(0,_reactNativeSizeMatters.moderateScale)(2)},multiSelectedItemLabelStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:95,columnNumber:7}}),label),!disabled&&_react.default.createElement(_reactNative.TouchableWithoutFeedback,{disabled:disabled,onPress:handleItemUnSelection,__self:_this,__source:{fileName:_jsxFileName,lineNumber:105,columnNumber:9}},_react.default.createElement(_reactNativeRemixIcon.default,{color:theme.colors.font.grey800,name:"ri-close-line",size:(0,_reactNativeSizeMatters.moderateScale)(20),__self:_this,__source:{fileName:_jsxFileName,lineNumber:109,columnNumber:11}})));};MultiSelectItem.propTypes={label:_propTypes.default.string,onUnselect:_propTypes.default.func,multiSelectedItemContainerStyle:_propTypes.default.object,multiSelectedItemLabelStyle:_propTypes.default.object,disabled:_propTypes.default.bool,confirmationAlertObj:_propTypes.default.object};var AnimatedLabel=_reactNativeReanimated.default.createAnimatedComponent(Typography);var MultiSelect=function MultiSelect(_ref2){var options=_ref2.options,label=_ref2.label,value=_ref2.value,labelExtractor=_ref2.labelExtractor,valueExtractor=_ref2.valueExtractor,onSelect=_ref2.onSelect,deletedValue=_ref2.deletedValue,isLoading=_ref2.isLoading,isSearchable=_ref2.isSearchable,showCreateOption=_ref2.showCreateOption,labelStyle=_ref2.labelStyle,containerStyle=_ref2.containerStyle,inputContainerStyle=_ref2.inputContainerStyle,dropdownContainerStyle=_ref2.dropdownContainerStyle,itemContainerStyle=_ref2.itemContainerStyle,multiSelectedItemContainerStyle=_ref2.multiSelectedItemContainerStyle,multiSelectedItemLabelStyle=_ref2.multiSelectedItemLabelStyle,selectedValue=_ref2.selectedValue,CreateItemComponent=_ref2.CreateItemComponent,showCreateOptionLoader=_ref2.showCreateOptionLoader,createSearchedOptionLabelStyle=_ref2.createSearchedOptionLabelStyle,onPressCreateOption=_ref2.onPressCreateOption,createSearchedOptionContainerStyle=_ref2.createSearchedOptionContainerStyle,onDonePress=_ref2.onDonePress,disabled=_ref2.disabled,noResultsLabelContainerStyle=_ref2.noResultsLabelContainerStyle,noResultsLabelStyle=_ref2.noResultsLabelStyle,noResultsLabel=_ref2.noResultsLabel,NoResultsComponent=_ref2.NoResultsComponent,maxItemSize=_ref2.maxItemSize,moreItemLabelContainerStyle=_ref2.moreItemLabelContainerStyle,moreItemLabelStyle=_ref2.moreItemLabelStyle,MoreItemComponent=_ref2.MoreItemComponent,onBackdropPress=_ref2.onBackdropPress,searchBarProps=_ref2.searchBarProps,confirmationAlertObj=_ref2.confirmationAlertObj,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 animatedLabelValue=(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 optionValue=valueExtractor(item,index);var isItemAlreadySelected=Boolean(value==null?void 0:value.find(function(selectedItem){return valueExtractor(selectedItem)===optionValue;}));return!isItemAlreadySelected;}).filter(function(item,index){var optionLabel=labelExtractor(item,index);if(searchQuery.length===0)return true;return formatStr(optionLabel).includes(formatStr(searchQuery));});var isOptionsEmpty=!options||(options==null?void 0:options.length)===0;var isSearchedOptionsEmpty=searchQuery.length>0&&filteredOptions.length===0;var emptyOptionsPlaceholderHeight=(0,_reactNativeSizeMatters.moderateScale)(40);var emptySearchedOptionsHeight=(0,_reactNativeSizeMatters.moderateScale)(40);var searchInputHeight=(0,_reactNativeSizeMatters.moderateScale)(35);var multipleOptionsSelected=(value==null?void 0:value.length)>0;var defaultDropdownItemHeight=(itemContainerStyle==null?void 0:itemContainerStyle.height)||(0,_reactNativeSizeMatters.moderateScale)(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+(0,_reactNativeSizeMatters.moderateScale)(10):0)+(isOptionsEmpty&&!(isSearchedOptionsEmpty&&showCreateOption)?emptyOptionsPlaceholderHeight:0)+(isSearchedOptionsEmpty&&showCreateOption?emptySearchedOptionsHeight:0);var getValue=function getValue(item,index){return(item==null?void 0:item.value)||valueExtractor(item,index)||item;};var getLabel=function getLabel(item,index){return(item==null?void 0:item.label)||labelExtractor(item,index)||item;};var handleCheckbox=function handleCheckbox(item){var oldData=(0,_toConsumableArray2.default)(value);var index=value.findIndex(function(data,index){return getValue(data,index)===getValue(item);});if(index===-1){oldData.push(item);}else{oldData.splice(index,1);}onSelect(oldData);};var CheckBoxContent=function CheckBoxContent(_ref3){var onPress=_ref3.onPress,item=_ref3.item,index=_ref3.index;var itemIndex=value.findIndex(function(data,i){return getValue(data,i)===getValue(item,index);});return _react.default.createElement(_.Container,{py:(0,_reactNativeSizeMatters.moderateScale)(12),__self:_this,__source:{fileName:_jsxFileName,lineNumber:285,columnNumber:7}},_react.default.createElement(_.CheckBox,{checked:itemIndex!==-1,disabled:disabled,label:(item==null?void 0:item.label)||labelExtractor(item,index)||item,onSelect:onPress,__self:_this,__source:{fileName:_jsxFileName,lineNumber:286,columnNumber:9}}));};var handleOpenDropdown=function handleOpenDropdown(){_reactNative.Keyboard.dismiss();setSearchQuery("");if(!showDropdown){setShowDropdown(true);}if(showDropdown){dropdownAnimatedHeight.value=0;}};var handleUnSelection=function handleUnSelection(item){var newValue=value.filter(function(selectedItem){return valueExtractor(selectedItem)!==valueExtractor(item);});onSelect(newValue);deletedValue(item);};(0,_react.useEffect)(function(){animatedLabelValue.value=(0,_reactNativeReanimated.withTiming)(value.length||showDropdown?1:0,{duration:250});},[value,showDropdown]);(0,_react.useEffect)(function(){if(showDropdown){dropdownAnimatedHeight.value=dropdownHeight;}},[showDropdown,dropdownHeight]);CheckBoxContent.propTypes={onPress:_propTypes.default.func,item:_propTypes.default.object,index:_propTypes.default.number};var animatedStyles=(0,_reactNativeReanimated.useAnimatedStyle)(function(){var _f=function _f(){return{top:(0,_reactNativeReanimated.interpolate)(animatedLabelValue.value,[0,1],[7,-5]),fontSize:(0,_reactNativeReanimated.interpolate)(animatedLabelValue.value,[0,1],[17,13])};};_f._closure={interpolate:_reactNativeReanimated.interpolate,animatedLabelValue:animatedLabelValue};_f.asString="function _f(){const{interpolate,animatedLabelValue}=jsThis._closure;{return{top:interpolate(animatedLabelValue.value,[0,1],[7,-5]),fontSize:interpolate(animatedLabelValue.value,[0,1],[17,13])};}}";_f.__workletHash=15702677381267;_f.__location="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/MultiSelect.jsx (337:42)";_f.__optimalization=3;return _f;}());return _react.default.createElement(_.Container,(0,_extends2.default)({},containerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:343,columnNumber:5}}),_react.default.createElement(_reactNative.TouchableWithoutFeedback,{disabled:isLoading,onPress:handleOpenDropdown,__self:_this,__source:{fileName:_jsxFileName,lineNumber:344,columnNumber:7}},_react.default.createElement(_.Container,(0,_extends2.default)({borderColor:showDropdown?"border.base":"border.grey400",borderRadius:(0,_reactNativeSizeMatters.moderateScale)(12),borderWidth:(0,_reactNativeSizeMatters.moderateScale)(1),minHeight:(0,_reactNativeSizeMatters.moderateScale)(58),p:(0,_reactNativeSizeMatters.moderateScale)(10),pr:(0,_reactNativeSizeMatters.moderateScale)(8),pt:(0,_reactNativeSizeMatters.moderateScale)(12)},inputContainerStyle,rest,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:348,columnNumber:9}}),_react.default.createElement(_.Container,{alignItems:"center",flexDirection:"row",justifyContent:"space-between",__self:_this,__source:{fileName:_jsxFileName,lineNumber:359,columnNumber:11}},_react.default.createElement(AnimatedLabel,{color:"font.grey600",position:"absolute",zIndex:1,style:[animatedStyles,(0,_extends2.default)({marginLeft:(0,_reactNativeSizeMatters.moderateScale)(2)},labelStyle)],__self:_this,__source:{fileName:_jsxFileName,lineNumber:364,columnNumber:13}},label),!multipleOptionsSelected&&_react.default.createElement(_.Container,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:375,columnNumber:42}}),multipleOptionsSelected&&_react.default.createElement(_.Container,{flexDirection:"row",flexWrap:"wrap",maxWidth:"85%",mt:(0,_reactNativeSizeMatters.moderateScale)(16),onStartShouldSetResponder:function onStartShouldSetResponder(){return true;},__self:_this,__source:{fileName:_jsxFileName,lineNumber:377,columnNumber:15}},value==null?void 0:value.slice(0,maxItemSize).map(function(item,index){return _react.default.createElement(MultiSelectItem,{confirmationAlertObj:confirmationAlertObj,disabled:disabled,key:index,label:getLabel(item),multiSelectedItemLabelStyle:multiSelectedItemLabelStyle,multiSelectedItemContainerStyle:multiSelectedItemContainerStyle,onUnselect:function onUnselect(){return handleUnSelection(item);},__self:_this,__source:{fileName:_jsxFileName,lineNumber:385,columnNumber:19}});}),(value==null?void 0:value.length)>maxItemSize&&(!MoreItemComponent?_react.default.createElement(_.Container,(0,_extends2.default)({alignItems:"center",bg:"background.secondary",borderRadius:(0,_reactNativeSizeMatters.moderateScale)(12),flexDirection:"row",justifyContent:"space-between",m:(0,_reactNativeSizeMatters.moderateScale)(1),px:(0,_reactNativeSizeMatters.moderateScale)(3),py:(0,_reactNativeSizeMatters.moderateScale)(1)},moreItemLabelContainerStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:399,columnNumber:21}}),_react.default.createElement(Typography,(0,_extends2.default)({},moreItemLabelStyle,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:410,columnNumber:23}}),"+",(value==null?void 0:value.length)-maxItemSize," More")):_react.default.createElement(MoreItemComponent,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:415,columnNumber:21}}))),_react.default.createElement(_.Container,{mt:(0,_reactNativeSizeMatters.moderateScale)(10),__self:_this,__source:{fileName:_jsxFileName,lineNumber:419,columnNumber:13}},isLoading?_react.default.createElement(_.Loader,{color:theme.colors.background.base,__self:_this,__source:{fileName:_jsxFileName,lineNumber:421,columnNumber:17}}):_react.default.createElement(_reactNativeRemixIcon.default,{color:"grey",name:"arrow-"+(showDropdown?"up":"down")+"-s-line",size:(0,_reactNativeSizeMatters.moderateScale)(20),__self:_this,__source:{fileName:_jsxFileName,lineNumber:423,columnNumber:17}}))))),_react.default.createElement(_.BottomSheet,{ContentRow:CheckBoxContent,CreateItemComponent:CreateItemComponent,NoResultsComponent:NoResultsComponent,canSearch:isSearchable,contentType:"checkbox",createSearchedOptionContainerStyle:createSearchedOptionContainerStyle,createSearchedOptionLabelStyle:createSearchedOptionLabelStyle,data:options,disabled:disabled,hide:function hide(){return setShowDropdown(false);},isVisible:showDropdown,labelExtractor:labelExtractor,noResultsLabel:noResultsLabel,noResultsLabelContainerStyle:noResultsLabelContainerStyle,noResultsLabelStyle:noResultsLabelStyle,searchBarProps:searchBarProps,showCreateOption:showCreateOption,showCreateOptionLoader:showCreateOptionLoader,title:label,valueExtractor:valueExtractor,onBackdropPress:onBackdropPress,onDonePress:onDonePress,onPressCreateOption:onPressCreateOption,onItemPress:function onItemPress(_ref4){var item=_ref4.item;handleCheckbox(item);selectedValue(item);},__self:_this,__source:{fileName:_jsxFileName,lineNumber:433,columnNumber:7}}));};exports.MultiSelect=MultiSelect;MultiSelect.propTypes={label:_propTypes.default.string,options:_propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.string),_propTypes.default.arrayOf(_propTypes.default.object)]),labelExtractor:_propTypes.default.func,valueExtractor:_propTypes.default.func,value:_propTypes.default.oneOfType([_propTypes.default.string,_propTypes.default.array]),onSelect:_propTypes.default.func,selectedValue:_propTypes.default.func,deletedValue:_propTypes.default.func,isLoading:_propTypes.default.bool,isSearchable:_propTypes.default.bool,onDonePress:_propTypes.default.func,showCreateOption:_propTypes.default.bool,showCreateOptionLoader:_propTypes.default.bool,onPressCreateOption:_propTypes.default.func,labelStyle:_propTypes.default.object,containerStyle:_propTypes.default.object,inputContainerStyle:_propTypes.default.object,dropdownContainerStyle:_propTypes.default.object,itemContainerStyle:_propTypes.default.object,multiSelectedItemContainerStyle:_propTypes.default.object,multiSelectedItemLabelStyle:_propTypes.default.object,confirmationAlertObj:_propTypes.default.object,createSearchedOptionContainerStyle:_propTypes.default.object,createSearchedOptionLabelStyle:_propTypes.default.object,CreateItemComponent:_propTypes.default.func,disabled:_propTypes.default.bool,noResultsLabelContainerStyle:_propTypes.default.object,noResultsLabelStyle:_propTypes.default.object,noResultsLabel:_propTypes.default.string,NoResultsComponent:_propTypes.default.node,maxItemSize:_propTypes.default.number,moreItemLabelContainerStyle:_propTypes.default.object,moreItemLabelStyle:_propTypes.default.object,MoreItemComponent:_propTypes.default.node,onBackdropPress:_propTypes.default.func,searchBarProps:_propTypes.default.object};MultiSelect.defaultProps={label: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(){},selectedValue:function selectedValue(){},deletedValue:function deletedValue(){},isLoading:false,isSearchable:false,showCreateOption:false,showCreateOptionLoader:false,onPressCreateOption:function onPressCreateOption(){},onDonePress:function onDonePress(){},maxItemSize:5,onBackdropPress:function onBackdropPress(){},searchBarProps:{},confirmationAlertObj:{}};
@@ -1 +1 @@
1
- var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _objectWithoutProperties2=_interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));var _defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _assertThisInitialized2=_interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));var _inherits2=_interopRequireDefault(require("@babel/runtime/helpers/inherits"));var _possibleConstructorReturn2=_interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));var _getPrototypeOf2=_interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));var _react=_interopRequireWildcard(require("react"));var _reactNative=require("react-native");var _propTypes=_interopRequireDefault(require("prop-types"));var _reactNativeSizeMatters=require("react-native-size-matters");var _TouchableWithoutFeedback=_interopRequireDefault(require("./TouchableWithoutFeedback"));var _excluded=["delayLongPress","delayPressIn","delayPressOut","disabled","hitSlop","pressRetentionOffset","children","rippleContainerBorderRadius","rippleOutsideContainer","testID","nativeID","accessible","accessibilityHint","accessibilityLabel"];var _jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/Ripple.jsx";function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj.default=obj;if(cache){cache.set(obj,newObj);}return newObj;}function _createSuper(Derived){var hasNativeReflectConstruct=_isNativeReflectConstruct();return function _createSuperInternal(){var Super=(0,_getPrototypeOf2.default)(Derived),result;if(hasNativeReflectConstruct){var NewTarget=(0,_getPrototypeOf2.default)(this).constructor;result=Reflect.construct(Super,arguments,NewTarget);}else{result=Super.apply(this,arguments);}return(0,_possibleConstructorReturn2.default)(this,result);};}function _isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));return true;}catch(e){return false;}}var radius=(0,_reactNativeSizeMatters.moderateScale)(10);var Ripple=function(_PureComponent){(0,_inherits2.default)(Ripple,_PureComponent);var _super=_createSuper(Ripple);function Ripple(props){var _this;(0,_classCallCheck2.default)(this,Ripple);_this=_super.call(this,props);_this.onLayout=_this.onLayout.bind((0,_assertThisInitialized2.default)(_this));_this.onPress=_this.onPress.bind((0,_assertThisInitialized2.default)(_this));_this.onPressIn=_this.onPressIn.bind((0,_assertThisInitialized2.default)(_this));_this.onPressOut=_this.onPressOut.bind((0,_assertThisInitialized2.default)(_this));_this.onLongPress=_this.onLongPress.bind((0,_assertThisInitialized2.default)(_this));_this.onAnimationEnd=_this.onAnimationEnd.bind((0,_assertThisInitialized2.default)(_this));_this.renderRipple=_this.renderRipple.bind((0,_assertThisInitialized2.default)(_this));_this.unique=0;_this.mounted=false;_this.state={width:0,height:0,ripples:[]};return _this;}(0,_createClass2.default)(Ripple,[{key:"componentDidMount",value:function componentDidMount(){this.mounted=true;}},{key:"componentWillUnmount",value:function componentWillUnmount(){this.mounted=false;}},{key:"onLayout",value:function onLayout(event){var _event$nativeEvent$la=event.nativeEvent.layout,width=_event$nativeEvent$la.width,height=_event$nativeEvent$la.height;var onLayout=this.props.onLayout;if("function"===typeof onLayout){onLayout(event);}this.setState({width:width,height:height});}},{key:"onPress",value:function onPress(event){var ripples=this.state.ripples;var _this$props=this.props,onPress=_this$props.onPress,rippleSequential=_this$props.rippleSequential;if(!rippleSequential||!ripples.length){if("function"===typeof onPress){requestAnimationFrame(function(){return onPress(event);});}this.startRipple(event);}}},{key:"onLongPress",value:function onLongPress(event){var onLongPress=this.props.onLongPress;if("function"===typeof onLongPress){requestAnimationFrame(function(){return onLongPress(event);});}this.startRipple(event);}},{key:"onPressIn",value:function onPressIn(event){var onPressIn=this.props.onPressIn;if("function"===typeof onPressIn){onPressIn(event);}}},{key:"onPressOut",value:function onPressOut(event){var onPressOut=this.props.onPressOut;if("function"===typeof onPressOut){onPressOut(event);}}},{key:"onAnimationEnd",value:function onAnimationEnd(){if(this.mounted){this.setState(function(_ref){var ripples=_ref.ripples;return{ripples:ripples.slice(1)};});}}},{key:"startRipple",value:function startRipple(event){var _this$state=this.state,width=_this$state.width,height=_this$state.height;var _this$props2=this.props,rippleDuration=_this$props2.rippleDuration,rippleCentered=_this$props2.rippleCentered,rippleSize=_this$props2.rippleSize,onRippleAnimation=_this$props2.onRippleAnimation;var w2=0.5*width;var h2=0.5*height;var _ref2=rippleCentered?{locationX:w2,locationY:h2}:event.nativeEvent,locationX=_ref2.locationX,locationY=_ref2.locationY;var offsetX=Math.abs(w2-locationX);var offsetY=Math.abs(h2-locationY);var size=rippleSize>0?0.5*rippleSize:Math.sqrt(Math.pow(w2+offsetX,2)+Math.pow(h2+offsetY,2));var ripple={unique:this.unique++,progress:new _reactNative.Animated.Value(0),locationX:locationX,locationY:locationY,size:size};var animation=_reactNative.Animated.timing(ripple.progress,{toValue:1,easing:_reactNative.Easing.out(_reactNative.Easing.ease),duration:rippleDuration,useNativeDriver:true});onRippleAnimation(animation,this.onAnimationEnd);this.setState(function(_ref3){var ripples=_ref3.ripples;return{ripples:ripples.concat(ripple)};});}},{key:"renderRipple",value:function renderRipple(_ref4){var _rippleStyle;var unique=_ref4.unique,progress=_ref4.progress,locationX=_ref4.locationX,locationY=_ref4.locationY,size=_ref4.size;var _this$props3=this.props,rippleColor=_this$props3.rippleColor,rippleOpacity=_this$props3.rippleOpacity,rippleFades=_this$props3.rippleFades;var rippleStyle=(_rippleStyle={top:locationY-radius},(0,_defineProperty2.default)(_rippleStyle,_reactNative.I18nManager.isRTL?"right":"left",locationX-radius),(0,_defineProperty2.default)(_rippleStyle,"backgroundColor",rippleColor),(0,_defineProperty2.default)(_rippleStyle,"transform",[{scale:progress.interpolate({inputRange:[0,1],outputRange:[0.5/radius,size/radius]})}]),(0,_defineProperty2.default)(_rippleStyle,"opacity",rippleFades?progress.interpolate({inputRange:[0,1],outputRange:[rippleOpacity,0]}):rippleOpacity),_rippleStyle);return _react.default.createElement(_reactNative.Animated.View,{key:unique,style:[styles.ripple,rippleStyle],__self:this,__source:{fileName:_jsxFileName,lineNumber:205,columnNumber:12}});}},{key:"render",value:function render(){var ripples=this.state.ripples;var _this$props4=this.props,delayLongPress=_this$props4.delayLongPress,delayPressIn=_this$props4.delayPressIn,delayPressOut=_this$props4.delayPressOut,disabled=_this$props4.disabled,hitSlop=_this$props4.hitSlop,pressRetentionOffset=_this$props4.pressRetentionOffset,children=_this$props4.children,rippleContainerBorderRadius=_this$props4.rippleContainerBorderRadius,rippleOutsideContainer=_this$props4.rippleOutsideContainer,testID=_this$props4.testID,nativeID=_this$props4.nativeID,accessible=_this$props4.accessible,accessibilityHint=_this$props4.accessibilityHint,accessibilityLabel=_this$props4.accessibilityLabel,props=(0,_objectWithoutProperties2.default)(_this$props4,_excluded);var touchableProps=(0,_extends2.default)({delayLongPress:delayLongPress,delayPressIn:delayPressIn,delayPressOut:delayPressOut,disabled:disabled,hitSlop:hitSlop,pressRetentionOffset:pressRetentionOffset,testID:testID,accessible:accessible,accessibilityHint:accessibilityHint,accessibilityLabel:accessibilityLabel,onLayout:this.onLayout,onPress:this.onPress,onLongPress:this.onLongPress,onPressIn:this.onPressIn,onPressOut:this.onPressOut},"web"!==_reactNative.Platform.OS?{nativeID:nativeID}:null);var containerStyle={borderRadius:rippleContainerBorderRadius};return _react.default.createElement(_TouchableWithoutFeedback.default,(0,_extends2.default)({},touchableProps,{__self:this,__source:{fileName:_jsxFileName,lineNumber:253,columnNumber:7}}),_react.default.createElement(_reactNative.Animated.View,(0,_extends2.default)({},props,{collapsable:false,pointerEvents:"box-only",__self:this,__source:{fileName:_jsxFileName,lineNumber:254,columnNumber:9}}),children,_react.default.createElement(_reactNative.View,{style:[styles.container(rippleOutsideContainer),containerStyle],__self:this,__source:{fileName:_jsxFileName,lineNumber:256,columnNumber:11}},ripples.map(this.renderRipple))));}}]);return Ripple;}(_react.PureComponent);exports.default=Ripple;Ripple.defaultProps=(0,_extends2.default)({},_TouchableWithoutFeedback.default.defaultProps,{rippleColor:"rgb(0, 0, 0)",rippleOpacity:0.3,rippleDuration:400,rippleSize:0,rippleContainerBorderRadius:0,rippleCentered:false,rippleSequential:false,rippleFades:true,rippleOutsideContainer:false,disabled:false,onRippleAnimation:function onRippleAnimation(animation,onComplete){return animation.start(onComplete);}});Ripple.propTypes=(0,_extends2.default)({},_reactNative.Animated.View.propTypes,_TouchableWithoutFeedback.default.propTypes,{rippleColor:_propTypes.default.string,rippleOpacity:_propTypes.default.number,rippleDuration:_propTypes.default.number,rippleSize:_propTypes.default.number,rippleContainerBorderRadius:_propTypes.default.number,rippleCentered:_propTypes.default.bool,rippleSequential:_propTypes.default.bool,rippleFades:_propTypes.default.bool,rippleOutsideContainer:_propTypes.default.bool,disabled:_propTypes.default.bool,onRippleAnimation:_propTypes.default.func});var styles=_reactNative.StyleSheet.create({container:function container(rippleOutsideContainer){return(0,_extends2.default)({},_reactNative.StyleSheet.absoluteFillObject,{backgroundColor:"transparent",overflow:rippleOutsideContainer?"visible":"hidden"});},ripple:{width:radius*2,height:radius*2,borderRadius:radius,overflow:"hidden",position:"absolute"}});
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _objectWithoutProperties2=_interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));var _defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _assertThisInitialized2=_interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));var _inherits2=_interopRequireDefault(require("@babel/runtime/helpers/inherits"));var _possibleConstructorReturn2=_interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));var _getPrototypeOf2=_interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));var _react=_interopRequireWildcard(require("react"));var _reactNative=require("react-native");var _propTypes=_interopRequireDefault(require("prop-types"));var _reactNativeSizeMatters=require("react-native-size-matters");var _TouchableWithoutFeedback=_interopRequireDefault(require("./TouchableWithoutFeedback"));var _excluded=["delayLongPress","delayPressIn","delayPressOut","disabled","hitSlop","pressRetentionOffset","children","rippleContainerBorderRadius","rippleOutsideContainer","testID","nativeID","accessible","accessibilityHint","accessibilityLabel"];var _jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/Ripple.jsx";function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj.default=obj;if(cache){cache.set(obj,newObj);}return newObj;}function _createSuper(Derived){var hasNativeReflectConstruct=_isNativeReflectConstruct();return function _createSuperInternal(){var Super=(0,_getPrototypeOf2.default)(Derived),result;if(hasNativeReflectConstruct){var NewTarget=(0,_getPrototypeOf2.default)(this).constructor;result=Reflect.construct(Super,arguments,NewTarget);}else{result=Super.apply(this,arguments);}return(0,_possibleConstructorReturn2.default)(this,result);};}function _isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));return true;}catch(e){return false;}}var radius=(0,_reactNativeSizeMatters.moderateScale)(10);var Ripple=function(_PureComponent){(0,_inherits2.default)(Ripple,_PureComponent);var _super=_createSuper(Ripple);function Ripple(props){var _this;(0,_classCallCheck2.default)(this,Ripple);_this=_super.call(this,props);_this.onLayout=_this.onLayout.bind((0,_assertThisInitialized2.default)(_this));_this.onPress=_this.onPress.bind((0,_assertThisInitialized2.default)(_this));_this.onPressIn=_this.onPressIn.bind((0,_assertThisInitialized2.default)(_this));_this.onPressOut=_this.onPressOut.bind((0,_assertThisInitialized2.default)(_this));_this.onLongPress=_this.onLongPress.bind((0,_assertThisInitialized2.default)(_this));_this.onAnimationEnd=_this.onAnimationEnd.bind((0,_assertThisInitialized2.default)(_this));_this.renderRipple=_this.renderRipple.bind((0,_assertThisInitialized2.default)(_this));_this.unique=0;_this.mounted=false;_this.state={width:0,height:0,ripples:[]};return _this;}(0,_createClass2.default)(Ripple,[{key:"componentDidMount",value:function componentDidMount(){this.mounted=true;}},{key:"componentWillUnmount",value:function componentWillUnmount(){this.mounted=false;}},{key:"onLayout",value:function onLayout(event){var _event$nativeEvent$la=event.nativeEvent.layout,width=_event$nativeEvent$la.width,height=_event$nativeEvent$la.height;var onLayout=this.props.onLayout;if("function"===typeof onLayout){onLayout(event);}this.setState({width:width,height:height});}},{key:"onPress",value:function onPress(event){var ripples=this.state.ripples;var _this$props=this.props,onPress=_this$props.onPress,rippleSequential=_this$props.rippleSequential;if(!rippleSequential||!ripples.length){if("function"===typeof onPress){requestAnimationFrame(function(){return onPress(event);});}this.startRipple(event);}}},{key:"onLongPress",value:function onLongPress(event){var onLongPress=this.props.onLongPress;if("function"===typeof onLongPress){requestAnimationFrame(function(){return onLongPress(event);});}this.startRipple(event);}},{key:"onPressIn",value:function onPressIn(event){var onPressIn=this.props.onPressIn;if("function"===typeof onPressIn){onPressIn(event);}}},{key:"onPressOut",value:function onPressOut(event){var onPressOut=this.props.onPressOut;if("function"===typeof onPressOut){onPressOut(event);}}},{key:"onAnimationEnd",value:function onAnimationEnd(){if(this.mounted){this.setState(function(_ref){var ripples=_ref.ripples;return{ripples:ripples.slice(1)};});}}},{key:"startRipple",value:function startRipple(event){var _this$state=this.state,width=_this$state.width,height=_this$state.height;var _this$props2=this.props,rippleDuration=_this$props2.rippleDuration,rippleCentered=_this$props2.rippleCentered,rippleSize=_this$props2.rippleSize,onRippleAnimation=_this$props2.onRippleAnimation;var w2=0.5*width;var h2=0.5*height;var _ref2=rippleCentered?{locationX:w2,locationY:h2}:event.nativeEvent,locationX=_ref2.locationX,locationY=_ref2.locationY;var offsetX=Math.abs(w2-locationX);var offsetY=Math.abs(h2-locationY);var size=rippleSize>0?0.5*rippleSize:Math.sqrt(Math.pow(w2+offsetX,2)+Math.pow(h2+offsetY,2));var ripple={unique:this.unique++,progress:new _reactNative.Animated.Value(0),locationX:locationX,locationY:locationY,size:size};var animation=_reactNative.Animated.timing(ripple.progress,{toValue:1,easing:_reactNative.Easing.out(_reactNative.Easing.ease),duration:rippleDuration,useNativeDriver:true});onRippleAnimation(animation,this.onAnimationEnd);this.setState(function(_ref3){var ripples=_ref3.ripples;return{ripples:ripples.concat(ripple)};});}},{key:"renderRipple",value:function renderRipple(_ref4){var _rippleStyle;var unique=_ref4.unique,progress=_ref4.progress,locationX=_ref4.locationX,locationY=_ref4.locationY,size=_ref4.size;var _this$props3=this.props,rippleColor=_this$props3.rippleColor,rippleOpacity=_this$props3.rippleOpacity,rippleFades=_this$props3.rippleFades;var rippleStyle=(_rippleStyle={top:locationY-radius},(0,_defineProperty2.default)(_rippleStyle,_reactNative.I18nManager.isRTL?"right":"left",locationX-radius),(0,_defineProperty2.default)(_rippleStyle,"backgroundColor",rippleColor),(0,_defineProperty2.default)(_rippleStyle,"transform",[{scale:progress.interpolate({inputRange:[0,1],outputRange:[0.5/radius,size/radius]})}]),(0,_defineProperty2.default)(_rippleStyle,"opacity",rippleFades?progress.interpolate({inputRange:[0,1],outputRange:[rippleOpacity,0]}):rippleOpacity),_rippleStyle);return _react.default.createElement(_reactNative.Animated.View,{key:unique,style:[styles.ripple,rippleStyle],__self:this,__source:{fileName:_jsxFileName,lineNumber:206,columnNumber:12}});}},{key:"render",value:function render(){var ripples=this.state.ripples;var _this$props4=this.props,delayLongPress=_this$props4.delayLongPress,delayPressIn=_this$props4.delayPressIn,delayPressOut=_this$props4.delayPressOut,disabled=_this$props4.disabled,hitSlop=_this$props4.hitSlop,pressRetentionOffset=_this$props4.pressRetentionOffset,children=_this$props4.children,rippleContainerBorderRadius=_this$props4.rippleContainerBorderRadius,rippleOutsideContainer=_this$props4.rippleOutsideContainer,testID=_this$props4.testID,nativeID=_this$props4.nativeID,accessible=_this$props4.accessible,accessibilityHint=_this$props4.accessibilityHint,accessibilityLabel=_this$props4.accessibilityLabel,props=(0,_objectWithoutProperties2.default)(_this$props4,_excluded);var touchableProps=(0,_extends2.default)({delayLongPress:delayLongPress,delayPressIn:delayPressIn,delayPressOut:delayPressOut,disabled:disabled,hitSlop:hitSlop,pressRetentionOffset:pressRetentionOffset,testID:testID,accessible:accessible,accessibilityHint:accessibilityHint,accessibilityLabel:accessibilityLabel,onLayout:this.onLayout,onPress:this.onPress,onLongPress:this.onLongPress,onPressIn:this.onPressIn,onPressOut:this.onPressOut},"web"!==_reactNative.Platform.OS?{nativeID:nativeID}:null);var containerStyle={borderRadius:rippleContainerBorderRadius};return _react.default.createElement(_TouchableWithoutFeedback.default,(0,_extends2.default)({},touchableProps,{__self:this,__source:{fileName:_jsxFileName,lineNumber:254,columnNumber:7}}),_react.default.createElement(_reactNative.Animated.View,(0,_extends2.default)({},props,{collapsable:false,pointerEvents:"box-only",__self:this,__source:{fileName:_jsxFileName,lineNumber:255,columnNumber:9}}),children,_react.default.createElement(_reactNative.View,{style:[styles.container(rippleOutsideContainer),containerStyle],__self:this,__source:{fileName:_jsxFileName,lineNumber:257,columnNumber:11}},ripples.map(this.renderRipple))));}}]);return Ripple;}(_react.PureComponent);exports.default=Ripple;Ripple.defaultProps=(0,_extends2.default)({},_TouchableWithoutFeedback.default.defaultProps,{rippleColor:"rgb(0, 0, 0)",rippleOpacity:0.3,rippleDuration:400,rippleSize:0,rippleContainerBorderRadius:0,rippleCentered:false,rippleSequential:false,rippleFades:true,rippleOutsideContainer:false,disabled:false,onRippleAnimation:function onRippleAnimation(animation,onComplete){return animation.start(onComplete);}});Ripple.propTypes=(0,_extends2.default)({},_reactNative.Animated.View.propTypes,_TouchableWithoutFeedback.default.propTypes,{children:_propTypes.default.node.isRequired,rippleColor:_propTypes.default.string,rippleOpacity:_propTypes.default.number,rippleDuration:_propTypes.default.number,rippleSize:_propTypes.default.number,rippleContainerBorderRadius:_propTypes.default.number,rippleCentered:_propTypes.default.bool,rippleSequential:_propTypes.default.bool,rippleFades:_propTypes.default.bool,rippleOutsideContainer:_propTypes.default.bool,disabled:_propTypes.default.bool,onRippleAnimation:_propTypes.default.func});var styles=_reactNative.StyleSheet.create({container:function container(rippleOutsideContainer){return(0,_extends2.default)({},_reactNative.StyleSheet.absoluteFillObject,{backgroundColor:"transparent",overflow:rippleOutsideContainer?"visible":"hidden"});},ripple:{width:radius*2,height:radius*2,borderRadius:radius,overflow:"hidden",position:"absolute"}});
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"Accordion",{enumerable:true,get:function get(){return _Accordion.Accordion;}});Object.defineProperty(exports,"Alert",{enumerable:true,get:function get(){return _Alert.Alert;}});Object.defineProperty(exports,"AnimatedImage",{enumerable:true,get:function get(){return _AnimatedImage.AnimatedImage;}});Object.defineProperty(exports,"Avatar",{enumerable:true,get:function get(){return _Avatar.Avatar;}});Object.defineProperty(exports,"Badge",{enumerable:true,get:function get(){return _Badge.Badge;}});Object.defineProperty(exports,"BottomSheet",{enumerable:true,get:function get(){return _BottomSheet.BottomSheet;}});Object.defineProperty(exports,"BottomTabBar",{enumerable:true,get:function get(){return _BottomTabBar.BottomTabBar;}});Object.defineProperty(exports,"Button",{enumerable:true,get:function get(){return _Button.Button;}});Object.defineProperty(exports,"ButtonGroup",{enumerable:true,get:function get(){return _ButtonGroup.ButtonGroup;}});Object.defineProperty(exports,"Calendar",{enumerable:true,get:function get(){return _Calendar.Calendar;}});Object.defineProperty(exports,"Card",{enumerable:true,get:function get(){return _Card.Card;}});Object.defineProperty(exports,"Carousel",{enumerable:true,get:function get(){return _Carousel.Carousel;}});Object.defineProperty(exports,"CheckBox",{enumerable:true,get:function get(){return _CheckBox.CheckBox;}});Object.defineProperty(exports,"Chip",{enumerable:true,get:function get(){return _Chip.Chip;}});Object.defineProperty(exports,"Container",{enumerable:true,get:function get(){return _Container.Container;}});Object.defineProperty(exports,"Divider",{enumerable:true,get:function get(){return _Divider.Divider;}});Object.defineProperty(exports,"FAB",{enumerable:true,get:function get(){return _FAB.FAB;}});Object.defineProperty(exports,"FlashList",{enumerable:true,get:function get(){return _FlashList.FlashList;}});Object.defineProperty(exports,"FlatList",{enumerable:true,get:function get(){return _FlatList.FlatList;}});Object.defineProperty(exports,"Input",{enumerable:true,get:function get(){return _Input.Input;}});Object.defineProperty(exports,"ListItem",{enumerable:true,get:function get(){return _ListItem.ListItem;}});Object.defineProperty(exports,"Loader",{enumerable:true,get:function get(){return _Loader.Loader;}});Object.defineProperty(exports,"MultiSelect",{enumerable:true,get:function get(){return _MultiSelect.MultiSelect;}});Object.defineProperty(exports,"NotificationPreferenceList",{enumerable:true,get:function get(){return _NotificationPreferenceList.NotificationPreferenceList;}});Object.defineProperty(exports,"OnBoarding",{enumerable:true,get:function get(){return _OnBoarding.OnBoarding;}});Object.defineProperty(exports,"OrganizationItem",{enumerable:true,get:function get(){return _OrganizationItem.OrganizationItem;}});Object.defineProperty(exports,"OtpInputs",{enumerable:true,get:function get(){return _OtpInputs.OtpInputs;}});Object.defineProperty(exports,"ParentView",{enumerable:true,get:function get(){return _ParentView.ParentView;}});Object.defineProperty(exports,"Popover",{enumerable:true,get:function get(){return _Popover.Popover;}});Object.defineProperty(exports,"RadioButton",{enumerable:true,get:function get(){return _RadioButton.RadioButton;}});Object.defineProperty(exports,"RichTextEditor",{enumerable:true,get:function get(){return _RichTextEditor.RichTextEditor;}});Object.defineProperty(exports,"ScrollView",{enumerable:true,get:function get(){return _ScrollView.ScrollView;}});Object.defineProperty(exports,"SearchBar",{enumerable:true,get:function get(){return _SearchBar.SearchBar;}});Object.defineProperty(exports,"SegmentedTopBar",{enumerable:true,get:function get(){return _SegmentedTopBar.SegmentedTopBar;}});Object.defineProperty(exports,"Select",{enumerable:true,get:function get(){return _Select.Select;}});Object.defineProperty(exports,"SocialButton",{enumerable:true,get:function get(){return _SocialButton.SocialButton;}});Object.defineProperty(exports,"Toast",{enumerable:true,get:function get(){return _Toast.Toast;}});Object.defineProperty(exports,"ToggleSwitch",{enumerable:true,get:function get(){return _ToggleSwitch.ToggleSwitch;}});Object.defineProperty(exports,"TopBar",{enumerable:true,get:function get(){return _TopBar.TopBar;}});Object.defineProperty(exports,"Touchable",{enumerable:true,get:function get(){return _Touchable.Touchable;}});Object.defineProperty(exports,"Typography",{enumerable:true,get:function get(){return _Typography.Typography;}});var _Button=require("./Button");var _SocialButton=require("./SocialButton");var _Container=require("./Container");var _Typography=require("./Typography");var _Input=require("./Input");var _FAB=require("./FAB");var _ToggleSwitch=require("./ToggleSwitch");var _Avatar=require("./Avatar");var _Badge=require("./Badge");var _Toast=require("./Toast");var _Alert=require("./Alert");var _BottomSheet=require("./BottomSheet");var _Chip=require("./Chip");var _ParentView=require("./ParentView");var _RichTextEditor=require("./RichTextEditor");var _ButtonGroup=require("./ButtonGroup");var _OtpInputs=require("./OtpInputs");var _Popover=require("./Popover");var _Touchable=require("./Touchable");var _Card=require("./Card");var _TopBar=require("./TopBar");var _RadioButton=require("./RadioButton");var _CheckBox=require("./CheckBox");var _Select=require("./Select");var _MultiSelect=require("./MultiSelect");var _Divider=require("./Divider");var _FlatList=require("./FlatList");var _ScrollView=require("./ScrollView");var _SegmentedTopBar=require("./SegmentedTopBar");var _ListItem=require("./ListItem");var _Carousel=require("./Carousel");var _OnBoarding=require("./OnBoarding");var _SearchBar=require("./SearchBar");var _Accordion=require("./Accordion");var _Calendar=require("./Calendar");var _FlashList=require("./FlashList");var _BottomTabBar=require("./BottomTabBar");var _AnimatedImage=require("./AnimatedImage");var _NotificationPreferenceList=require("./NotificationPreferenceList");var _OrganizationItem=require("./OrganizationItem");var _Loader=require("./Loader");
1
+ Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"Accordion",{enumerable:true,get:function get(){return _Accordion.Accordion;}});Object.defineProperty(exports,"Alert",{enumerable:true,get:function get(){return _Alert.Alert;}});Object.defineProperty(exports,"AnimatedImage",{enumerable:true,get:function get(){return _AnimatedImage.AnimatedImage;}});Object.defineProperty(exports,"Avatar",{enumerable:true,get:function get(){return _Avatar.Avatar;}});Object.defineProperty(exports,"Badge",{enumerable:true,get:function get(){return _Badge.Badge;}});Object.defineProperty(exports,"BottomSheet",{enumerable:true,get:function get(){return _BottomSheet.BottomSheet;}});Object.defineProperty(exports,"BottomTabBar",{enumerable:true,get:function get(){return _BottomTabBar.BottomTabBar;}});Object.defineProperty(exports,"Button",{enumerable:true,get:function get(){return _Button.Button;}});Object.defineProperty(exports,"ButtonGroup",{enumerable:true,get:function get(){return _ButtonGroup.ButtonGroup;}});Object.defineProperty(exports,"Calendar",{enumerable:true,get:function get(){return _Calendar.Calendar;}});Object.defineProperty(exports,"Card",{enumerable:true,get:function get(){return _Card.Card;}});Object.defineProperty(exports,"Carousel",{enumerable:true,get:function get(){return _Carousel.Carousel;}});Object.defineProperty(exports,"CheckBox",{enumerable:true,get:function get(){return _CheckBox.CheckBox;}});Object.defineProperty(exports,"Chip",{enumerable:true,get:function get(){return _Chip.Chip;}});Object.defineProperty(exports,"Container",{enumerable:true,get:function get(){return _Container.Container;}});Object.defineProperty(exports,"Divider",{enumerable:true,get:function get(){return _Divider.Divider;}});Object.defineProperty(exports,"FAB",{enumerable:true,get:function get(){return _FAB.FAB;}});Object.defineProperty(exports,"FlashList",{enumerable:true,get:function get(){return _FlashList.FlashList;}});Object.defineProperty(exports,"FlatList",{enumerable:true,get:function get(){return _FlatList.FlatList;}});Object.defineProperty(exports,"Input",{enumerable:true,get:function get(){return _Input.Input;}});Object.defineProperty(exports,"InputEmailChip",{enumerable:true,get:function get(){return _InputEmailChip.InputEmailChip;}});Object.defineProperty(exports,"ListItem",{enumerable:true,get:function get(){return _ListItem.ListItem;}});Object.defineProperty(exports,"Loader",{enumerable:true,get:function get(){return _Loader.Loader;}});Object.defineProperty(exports,"MultiSelect",{enumerable:true,get:function get(){return _MultiSelect.MultiSelect;}});Object.defineProperty(exports,"NotificationPreferenceList",{enumerable:true,get:function get(){return _NotificationPreferenceList.NotificationPreferenceList;}});Object.defineProperty(exports,"OnBoarding",{enumerable:true,get:function get(){return _OnBoarding.OnBoarding;}});Object.defineProperty(exports,"OrganizationItem",{enumerable:true,get:function get(){return _OrganizationItem.OrganizationItem;}});Object.defineProperty(exports,"OtpInputs",{enumerable:true,get:function get(){return _OtpInputs.OtpInputs;}});Object.defineProperty(exports,"ParentView",{enumerable:true,get:function get(){return _ParentView.ParentView;}});Object.defineProperty(exports,"Popover",{enumerable:true,get:function get(){return _Popover.Popover;}});Object.defineProperty(exports,"RadioButton",{enumerable:true,get:function get(){return _RadioButton.RadioButton;}});Object.defineProperty(exports,"RichTextEditor",{enumerable:true,get:function get(){return _RichTextEditor.RichTextEditor;}});Object.defineProperty(exports,"ScrollView",{enumerable:true,get:function get(){return _ScrollView.ScrollView;}});Object.defineProperty(exports,"SearchBar",{enumerable:true,get:function get(){return _SearchBar.SearchBar;}});Object.defineProperty(exports,"SegmentedTopBar",{enumerable:true,get:function get(){return _SegmentedTopBar.SegmentedTopBar;}});Object.defineProperty(exports,"Select",{enumerable:true,get:function get(){return _Select.Select;}});Object.defineProperty(exports,"SocialButton",{enumerable:true,get:function get(){return _SocialButton.SocialButton;}});Object.defineProperty(exports,"Toast",{enumerable:true,get:function get(){return _Toast.Toast;}});Object.defineProperty(exports,"ToggleSwitch",{enumerable:true,get:function get(){return _ToggleSwitch.ToggleSwitch;}});Object.defineProperty(exports,"TopBar",{enumerable:true,get:function get(){return _TopBar.TopBar;}});Object.defineProperty(exports,"Touchable",{enumerable:true,get:function get(){return _Touchable.Touchable;}});Object.defineProperty(exports,"Typography",{enumerable:true,get:function get(){return _Typography.Typography;}});var _Button=require("./Button");var _SocialButton=require("./SocialButton");var _Container=require("./Container");var _Typography=require("./Typography");var _Input=require("./Input");var _FAB=require("./FAB");var _ToggleSwitch=require("./ToggleSwitch");var _Avatar=require("./Avatar");var _Badge=require("./Badge");var _Toast=require("./Toast");var _Alert=require("./Alert");var _BottomSheet=require("./BottomSheet");var _Chip=require("./Chip");var _ParentView=require("./ParentView");var _RichTextEditor=require("./RichTextEditor");var _ButtonGroup=require("./ButtonGroup");var _OtpInputs=require("./OtpInputs");var _Popover=require("./Popover");var _Touchable=require("./Touchable");var _Card=require("./Card");var _TopBar=require("./TopBar");var _RadioButton=require("./RadioButton");var _CheckBox=require("./CheckBox");var _Select=require("./Select");var _MultiSelect=require("./MultiSelect");var _Divider=require("./Divider");var _FlatList=require("./FlatList");var _ScrollView=require("./ScrollView");var _SegmentedTopBar=require("./SegmentedTopBar");var _ListItem=require("./ListItem");var _Carousel=require("./Carousel");var _OnBoarding=require("./OnBoarding");var _SearchBar=require("./SearchBar");var _Accordion=require("./Accordion");var _Calendar=require("./Calendar");var _FlashList=require("./FlashList");var _BottomTabBar=require("./BottomTabBar");var _AnimatedImage=require("./AnimatedImage");var _NotificationPreferenceList=require("./NotificationPreferenceList");var _OrganizationItem=require("./OrganizationItem");var _Loader=require("./Loader");var _InputEmailChip=require("./InputEmailChip");
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:true});exports.isAndroid=exports.getShadowStyles=void 0;var _reactNative=require("react-native");var shadowRadiusList=[1,1.41,2.22,2.62,3.84,4.65,4.65,4.65,5.46,6.27,6.68,7.49,8.3,9.11,9.51,10.32,11.14,11.95,12.35,13.16,13.97,14.78,15.19,16];var shadowOpacityList=[0.18,0.2,0.22,0.23,0.25,0.27,0.29,0.3,0.32,0.34,0.36,0.37,0.39,0.41,0.43,0.44,0.46,0.48,0.5,0.51,0.53,0.55,0.57,0.58];var getShadowStyles=function getShadowStyles(){var elevation=arguments.length>0&&arguments[0]!==undefined?arguments[0]:0;if(elevation>24)elevation=24;return{shadowOffset:{width:0,height:Math.floor(elevation/2)},shadowRadius:shadowRadiusList[elevation-1],shadowOpacity:shadowOpacityList[elevation-1],elevation:elevation};};exports.getShadowStyles=getShadowStyles;var isAndroid=function isAndroid(){return _reactNative.Platform.OS==="android";};exports.isAndroid=isAndroid;
1
+ Object.defineProperty(exports,"__esModule",{value:true});exports.trimChars=exports.isValidEmail=exports.isAndroid=exports.getShadowStyles=exports.endsWithChars=exports.charsForRegex=void 0;var _reactNative=require("react-native");var shadowRadiusList=[1,1.41,2.22,2.62,3.84,4.65,4.65,4.65,5.46,6.27,6.68,7.49,8.3,9.11,9.51,10.32,11.14,11.95,12.35,13.16,13.97,14.78,15.19,16];var shadowOpacityList=[0.18,0.2,0.22,0.23,0.25,0.27,0.29,0.3,0.32,0.34,0.36,0.37,0.39,0.41,0.43,0.44,0.46,0.48,0.5,0.51,0.53,0.55,0.57,0.58];var getShadowStyles=function getShadowStyles(){var elevation=arguments.length>0&&arguments[0]!==undefined?arguments[0]:0;if(elevation>24)elevation=24;return{shadowOffset:{width:0,height:Math.floor(elevation/2)},shadowRadius:shadowRadiusList[elevation-1],shadowOpacity:shadowOpacityList[elevation-1],elevation:elevation};};exports.getShadowStyles=getShadowStyles;var isAndroid=function isAndroid(){return _reactNative.Platform.OS==="android";};exports.isAndroid=isAndroid;var isValidEmail=function isValidEmail(email){return String(email).toLowerCase().match(/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/);};exports.isValidEmail=isValidEmail;var charsForRegex=function charsForRegex(chars){return(chars==null?void 0:chars.join("|"))||"";};exports.charsForRegex=charsForRegex;var endsWithChars=function endsWithChars(text,chars){var regex="("+charsForRegex(chars)+")$";return text.match(regex);};exports.endsWithChars=endsWithChars;var trimChars=function trimChars(text,chars){var charsRegex=charsForRegex(chars);var startRegexPattern="^("+charsRegex+")+";var endRegexPattern="("+charsRegex+")+$";var startRegex=new RegExp(startRegexPattern);var endRegex=new RegExp(endRegexPattern);var trimmedText=text.replace(startRegex,"").replace(endRegex,"");return trimmedText;};exports.trimChars=trimChars;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neetoui-rn",
3
- "version": "0.0.236",
3
+ "version": "0.0.238",
4
4
  "main": "lib/index.js",
5
5
  "author": "BigBinary",
6
6
  "license": "MIT",
@@ -403,7 +403,7 @@ BottomSheet.propTypes = {
403
403
  /**
404
404
  * Component that renders when searched item doesn't exists
405
405
  */
406
- CreateItemComponent: PropTypes.node,
406
+ CreateItemComponent: PropTypes.func,
407
407
  /**
408
408
  * To customize empty options placeholder text style.
409
409
  */
@@ -98,7 +98,7 @@ const styles = StyleSheet.create({
98
98
  width: moderateScale(10),
99
99
  height: moderateScale(10),
100
100
  borderRadius: moderateScale(5),
101
- marginRight: moderateScale(8),
101
+ marginHorizontal: moderateScale(4),
102
102
  backgroundColor: "#2F3941",
103
103
  },
104
104
  inactiveDotStyle: {
@@ -1,10 +1,10 @@
1
- import * as React from "react";
1
+ import React from "react";
2
2
 
3
3
  import PropTypes from "prop-types";
4
4
  import Icon from "react-native-remix-icon";
5
5
  import { moderateScale } from "react-native-size-matters";
6
6
 
7
- import { Typography, Touchable } from "@components";
7
+ import { Typography, Touchable, Container } from "@components";
8
8
 
9
9
  const variantStyleObj = {
10
10
  solid: {
@@ -13,7 +13,7 @@ const variantStyleObj = {
13
13
  outlined: {
14
14
  bg: "background.white",
15
15
  border: "1px solid",
16
- borderColor: "border.grey400",
16
+ borderColor: "border.grey200",
17
17
  },
18
18
  };
19
19
 
@@ -51,6 +51,12 @@ const variantStyleObj = {
51
51
  *
52
52
  */
53
53
 
54
+ const commonContainerStyle = {
55
+ alignItems: "center",
56
+ borderRadius: moderateScale(20),
57
+ flexDirection: "row",
58
+ };
59
+
54
60
  export const Chip = ({
55
61
  label,
56
62
  LeftIcon,
@@ -66,33 +72,42 @@ export const Chip = ({
66
72
  containerStyle,
67
73
  closeIconContainerStyle,
68
74
  }) => (
69
- <Touchable
70
- alignItems="center"
71
- borderRadius={moderateScale(20)}
72
- disabled={!onChipPress || isDisabled}
73
- flexDirection="row"
74
- p={moderateScale(2)}
75
- onPress={onChipPress}
75
+ <Container
76
+ {...commonContainerStyle}
76
77
  {...(variant && variantStyleObj[variant])}
77
78
  {...(isDisabled && { opacity: 0.5 })}
78
79
  {...containerStyle}
80
+ m={0}
81
+ p={0}
79
82
  >
80
- {LeftIcon && <LeftIcon />}
81
- <Typography color={labelColor} fontFamily="sf400" mx={moderateScale(2)}>
82
- {label}
83
- </Typography>
83
+ <Touchable
84
+ disabled={!onChipPress || isDisabled}
85
+ overflow="hidden"
86
+ px={moderateScale(4)}
87
+ py={moderateScale(2)}
88
+ onPress={onChipPress}
89
+ {...commonContainerStyle}
90
+ {...containerStyle}
91
+ >
92
+ {LeftIcon && <LeftIcon />}
93
+ <Typography color={labelColor} fontFamily="sf400" mx={moderateScale(2)}>
94
+ {label}
95
+ </Typography>
96
+ </Touchable>
84
97
  {onClose && (
85
- <Touchable
98
+ <Container
86
99
  bg={closeIconBackground}
87
- borderRadius={moderateScale(10)}
88
- disabled={isDisabled}
89
- onPress={onClose}
100
+ borderRadius={closeIconSize}
101
+ m={moderateScale(3)}
102
+ p={moderateScale(1)}
90
103
  {...closeIconContainerStyle}
91
104
  >
92
- <Icon color={closeIconColor} name={closeIcon} size={closeIconSize} />
93
- </Touchable>
105
+ <Touchable disabled={isDisabled} onPress={onClose}>
106
+ <Icon color={closeIconColor} name={closeIcon} size={closeIconSize} />
107
+ </Touchable>
108
+ </Container>
94
109
  )}
95
- </Touchable>
110
+ </Container>
96
111
  );
97
112
 
98
113
  Chip.defaultProps = {
@@ -0,0 +1,217 @@
1
+ import React, { useContext, useRef, useState } from "react";
2
+ import { Platform } from "react-native";
3
+
4
+ import PropTypes from "prop-types";
5
+ import { moderateScale } from "react-native-size-matters";
6
+ import { ThemeContext } from "styled-components/native";
7
+
8
+ import { Container, Chip, Input, Typography } from "@components";
9
+
10
+ import { endsWithChars, trimChars, isValidEmail } from "../utils/utils";
11
+
12
+ const gap = moderateScale(4);
13
+
14
+ const chipWrapperStyle = {
15
+ pt: gap,
16
+ };
17
+
18
+ const getChipContainerStyle = isReadyForDeletion => ({
19
+ borderColor: isReadyForDeletion ? "border.danger" : "border.grey200",
20
+ });
21
+
22
+ export const InputEmailChip = ({
23
+ disabled,
24
+ label,
25
+ emails = [],
26
+ onUpdate,
27
+ delimiters = [" ", ","],
28
+ }) => {
29
+ const theme = useContext(ThemeContext);
30
+ const inputRef = useRef();
31
+
32
+ const [textValue, setTextValue] = useState("");
33
+ const [shouldShowInput, setShouldShowInput] = useState(false);
34
+ const [emailIndexForDeletion, setEmailIndexForDeletion] = useState(-1);
35
+
36
+ const handleKeyPress = event => {
37
+ const { key } = event.nativeEvent || {};
38
+
39
+ if (!(textValue === "" && key === "Backspace" && emails.length > 0)) return;
40
+
41
+ if (emailIndexForDeletion === -1) {
42
+ setEmailIndexForDeletion(emails.length - 1);
43
+ } else {
44
+ removeEmail({ lastOne: true });
45
+ setEmailIndexForDeletion(-1);
46
+ }
47
+ };
48
+
49
+ const handleSubmitEditing = event => {
50
+ const { text } = event.nativeEvent || {};
51
+ setEmailIndexForDeletion(-1);
52
+ checkAndUpdateEmails(text);
53
+ };
54
+
55
+ const handleTextChange = text => {
56
+ if (!endsWithChars(text, delimiters)) {
57
+ setEmailIndexForDeletion(-1);
58
+ setTextValue(text);
59
+
60
+ return;
61
+ }
62
+
63
+ checkAndUpdateEmails(text);
64
+ };
65
+
66
+ const handleInputTouchStart = () => setEmailIndexForDeletion(-1);
67
+
68
+ const handleTouchStart = () => {
69
+ if (disabled) return;
70
+
71
+ if (!inputRef.current?.isFocused()) {
72
+ inputRef.current?.focus();
73
+ }
74
+ };
75
+
76
+ const handleOnFocus = () => setShouldShowInput(true);
77
+
78
+ const handleOnBlur = () => {
79
+ if (textValue.trim() === "") {
80
+ setShouldShowInput(false);
81
+ }
82
+ };
83
+
84
+ const checkAndUpdateEmails = text => {
85
+ const emailCandidate = trimChars(text, delimiters);
86
+
87
+ if (
88
+ emailCandidate !== "" && // Non empty email
89
+ isValidEmail(emailCandidate) && // Valid email
90
+ !emails.includes(emailCandidate) // Unique email
91
+ ) {
92
+ const _emails = [...emails, emailCandidate];
93
+ setTextValue("");
94
+ onUpdate && onUpdate(_emails);
95
+ } else {
96
+ setTextValue(text);
97
+ }
98
+ };
99
+
100
+ const removeEmail = ({ email, lastOne = false }) => {
101
+ const indexOfEmail = lastOne ? emails.length - 1 : emails.indexOf(email);
102
+
103
+ if (indexOfEmail !== -1) {
104
+ const _emails = [...emails];
105
+ _emails.splice(indexOfEmail, 1);
106
+ onUpdate && onUpdate(_emails);
107
+ }
108
+ };
109
+
110
+ const inputProps = {
111
+ autoCorrect: false,
112
+ fontSize: "xs",
113
+ returnKeyType: "done",
114
+ autoCapitalize: "none",
115
+ keyboardType: "email-address",
116
+ padding: 0,
117
+ minHeight: moderateScale(26),
118
+ selectionColor:
119
+ emailIndexForDeletion === -1 ? theme.colors.font.base : "transparent",
120
+ };
121
+
122
+ return (
123
+ <Container
124
+ flexDirection="row"
125
+ minHeight={moderateScale(30)}
126
+ py={moderateScale(2)}
127
+ width="100%"
128
+ onTouchStart={handleTouchStart}
129
+ >
130
+ {!!label && (
131
+ <Typography
132
+ color={disabled ? "font.grey400" : "font.grey600"}
133
+ fontSize="xs"
134
+ mr={moderateScale(8)}
135
+ mt={Platform.select({
136
+ android: moderateScale(10),
137
+ ios: moderateScale(8),
138
+ })}
139
+ >
140
+ {label}
141
+ </Typography>
142
+ )}
143
+ <Container
144
+ alignItems="center"
145
+ flex={1}
146
+ flexDirection="row"
147
+ flexWrap="wrap"
148
+ >
149
+ {emails.map((email, index) => (
150
+ <Container key={email} {...chipWrapperStyle}>
151
+ <Chip
152
+ isDisabled={disabled}
153
+ label={email}
154
+ containerStyle={getChipContainerStyle(
155
+ index === emailIndexForDeletion
156
+ )}
157
+ onClose={disabled ? null : () => removeEmail({ email })}
158
+ />
159
+ </Container>
160
+ ))}
161
+ {!disabled && (
162
+ <Container
163
+ alignItems="center"
164
+ flex={1}
165
+ justifyContent="center"
166
+ minWidth={moderateScale(160)}
167
+ paddingTop={Platform.select({
168
+ ios: gap,
169
+ android: moderateScale(7),
170
+ })}
171
+ {...(shouldShowInput ? {} : { height: 0 })}
172
+ >
173
+ <Input
174
+ noBorder
175
+ disabled={disabled}
176
+ value={textValue}
177
+ inputProps={{
178
+ ...inputProps,
179
+ ref: inputRef,
180
+ onKeyPress: handleKeyPress,
181
+ onSubmitEditing: handleSubmitEditing,
182
+ onTouchStart: handleInputTouchStart,
183
+ onFocus: handleOnFocus,
184
+ onBlur: handleOnBlur,
185
+ }}
186
+ onChangeText={handleTextChange}
187
+ />
188
+ </Container>
189
+ )}
190
+ </Container>
191
+ </Container>
192
+ );
193
+ };
194
+
195
+ InputEmailChip.propTypes = {
196
+ /**
197
+ * Label for the input field
198
+ */
199
+ disabled: PropTypes.bool,
200
+ /**
201
+ * Label for the input field
202
+ */
203
+ label: PropTypes.string,
204
+ /**
205
+ * Array of emails to be set
206
+ */
207
+ emails: PropTypes.arrayOf(PropTypes.string),
208
+ /**
209
+ * Characters to be used for separating emails while entering
210
+ * By default `,`, ` ` and enter/done triggers chip creation for the entered email.
211
+ */
212
+ delimiters: PropTypes.arrayOf(PropTypes.string),
213
+ /**
214
+ * Callback containing the emails. It is triggered when an email is added or removed.
215
+ */
216
+ onUpdate: PropTypes.func,
217
+ };
@@ -337,7 +337,6 @@ export const MultiSelect = ({
337
337
  const animatedStyles = useAnimatedStyle(() => ({
338
338
  top: interpolate(animatedLabelValue.value, [0, 1], [7, -5]),
339
339
  fontSize: interpolate(animatedLabelValue.value, [0, 1], [17, 13]),
340
- color: "font.grey600",
341
340
  }));
342
341
 
343
342
  return (
@@ -363,6 +362,7 @@ export const MultiSelect = ({
363
362
  justifyContent="space-between"
364
363
  >
365
364
  <AnimatedLabel
365
+ color="font.grey600"
366
366
  position="absolute"
367
367
  zIndex={1}
368
368
  style={[
@@ -566,7 +566,7 @@ MultiSelect.propTypes = {
566
566
  /**
567
567
  * Component that renders when searched item doesn't exists
568
568
  */
569
- CreateItemComponent: PropTypes.node,
569
+ CreateItemComponent: PropTypes.func,
570
570
  /**
571
571
  * Flag will disable the selection of the item
572
572
  */
@@ -37,6 +37,7 @@ export default class Ripple extends PureComponent {
37
37
  ...Animated.View.propTypes,
38
38
  ...TouchableWithoutFeedback.propTypes,
39
39
 
40
+ children: PropTypes.node.isRequired,
40
41
  rippleColor: PropTypes.string,
41
42
  rippleOpacity: PropTypes.number,
42
43
  rippleDuration: PropTypes.number,
@@ -39,3 +39,4 @@ export { AnimatedImage } from "./AnimatedImage";
39
39
  export { NotificationPreferenceList } from "./NotificationPreferenceList";
40
40
  export { OrganizationItem } from "./OrganizationItem";
41
41
  export { Loader } from "./Loader";
42
+ export { InputEmailChip } from "./InputEmailChip";
@@ -25,3 +25,32 @@ export const getShadowStyles = (elevation = 0) => {
25
25
  };
26
26
 
27
27
  export const isAndroid = () => Platform.OS === "android";
28
+
29
+ export const isValidEmail = email =>
30
+ String(email)
31
+ .toLowerCase()
32
+ .match(
33
+ /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/
34
+ );
35
+
36
+ export const charsForRegex = chars => chars?.join("|") || "";
37
+
38
+ export const endsWithChars = (text, chars) => {
39
+ const regex = `(${charsForRegex(chars)})$`;
40
+
41
+ return text.match(regex);
42
+ };
43
+
44
+ export const trimChars = (text, chars) => {
45
+ const charsRegex = charsForRegex(chars);
46
+
47
+ const startRegexPattern = `^(${charsRegex})+`;
48
+ const endRegexPattern = `(${charsRegex})+$`;
49
+
50
+ const startRegex = new RegExp(startRegexPattern);
51
+ const endRegex = new RegExp(endRegexPattern);
52
+
53
+ const trimmedText = text.replace(startRegex, "").replace(endRegex, "");
54
+
55
+ return trimmedText;
56
+ };