@bigbinary/neetoui-rn 0.0.43 → 0.0.47
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/components/Input.js +1 -1
- package/lib/components/Toast.js +1 -0
- package/lib/components/index.js +1 -1
- package/lib/config/index.js +1 -0
- package/lib/config/toasterConfig.js +1 -0
- package/lib/theme/index.js +1 -1
- package/package.json +2 -1
- package/src/components/Input.js +42 -15
- package/src/components/Toast.js +59 -0
- package/src/components/index.js +1 -0
- package/src/config/index.js +1 -0
- package/src/config/toasterConfig.js +86 -0
- package/src/theme/index.js +8 -0
package/lib/components/Input.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.TextInput=exports.Input=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _objectWithoutProperties2=_interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));var _taggedTemplateLiteralLoose2=_interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));var _react=_interopRequireWildcard(require("react"));var _styledSystem=require("styled-system");var _native=_interopRequireWildcard(require("styled-components/native"));var _propTypes=_interopRequireDefault(require("@styled-system/prop-types"));var _propTypes2=_interopRequireDefault(require("prop-types"));var _=require("./");var _excluded=["label","message","error","onFocus","onBlur","inline","brandRight","brandLeft","brandColor","brandBackground","disabled"];var _templateObject,_templateObject2,_this=this,_jsxFileName="/Users/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/Input.js";function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj.default=obj;if(cache){cache.set(obj,newObj);}return newObj;}var TextInput=_native.default.TextInput(_templateObject||(_templateObject=(0,_taggedTemplateLiteralLoose2.default)(["\n ","\n ","\n ","\n ","\n ","\n"])),_styledSystem.flexbox,_styledSystem.space,_styledSystem.border,_styledSystem.buttonStyle,_styledSystem.typography);exports.TextInput=TextInput;var View=_native.default.View(_templateObject2||(_templateObject2=(0,_taggedTemplateLiteralLoose2.default)(["\n ","\n ","\n ","\n ","\n ","\n"])),_styledSystem.flexbox,_styledSystem.space,_styledSystem.border,_styledSystem.color,_styledSystem.layout);var Input=function
|
|
1
|
+
var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.TextInput=exports.Input=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _objectWithoutProperties2=_interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));var _taggedTemplateLiteralLoose2=_interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));var _react=_interopRequireWildcard(require("react"));var _styledSystem=require("styled-system");var _reactNativeRemixIcon=_interopRequireDefault(require("react-native-remix-icon"));var _native=_interopRequireWildcard(require("styled-components/native"));var _propTypes=_interopRequireDefault(require("@styled-system/prop-types"));var _propTypes2=_interopRequireDefault(require("prop-types"));var _=require("./");var _excluded=["label","message","error","onFocus","onBlur","inline","brandRight","brandLeft","brandColor","brandBackground","disabled","secureTextEntry"];var _templateObject,_templateObject2,_this=this,_jsxFileName="/Users/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/Input.js";function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj.default=obj;if(cache){cache.set(obj,newObj);}return newObj;}var TextInput=_native.default.TextInput(_templateObject||(_templateObject=(0,_taggedTemplateLiteralLoose2.default)(["\n ","\n ","\n ","\n ","\n ","\n"])),_styledSystem.flexbox,_styledSystem.space,_styledSystem.border,_styledSystem.buttonStyle,_styledSystem.typography);exports.TextInput=TextInput;var View=_native.default.View(_templateObject2||(_templateObject2=(0,_taggedTemplateLiteralLoose2.default)(["\n ","\n ","\n ","\n ","\n ","\n"])),_styledSystem.flexbox,_styledSystem.space,_styledSystem.border,_styledSystem.color,_styledSystem.layout);var Input=_react.default.forwardRef(function(props,ref){var _props$label=props.label,label=_props$label===void 0?"":_props$label,_props$message=props.message,message=_props$message===void 0?"":_props$message,_props$error=props.error,error=_props$error===void 0?false:_props$error,onFocus=props.onFocus,onBlur=props.onBlur,_props$inline=props.inline,inline=_props$inline===void 0?false:_props$inline,brandRight=props.brandRight,brandLeft=props.brandLeft,_props$brandColor=props.brandColor,brandColor=_props$brandColor===void 0?"font.grey600":_props$brandColor,_props$brandBackgroun=props.brandBackground,brandBackground=_props$brandBackgroun===void 0?"background.menubackground":_props$brandBackgroun,_props$disabled=props.disabled,disabled=_props$disabled===void 0?false:_props$disabled,_props$secureTextEntr=props.secureTextEntry,secureTextEntry=_props$secureTextEntr===void 0?false:_props$secureTextEntr,rest=(0,_objectWithoutProperties2.default)(props,_excluded);var theme=(0,_react.useContext)(_native.ThemeContext);var _useState=(0,_react.useState)(false),_useState2=(0,_slicedToArray2.default)(_useState,2),isPasswordVisible=_useState2[0],setIsPasswordVisible=_useState2[1];var _useState3=(0,_react.useState)(false),_useState4=(0,_slicedToArray2.default)(_useState3,2),isFocus=_useState4[0],setIsFocus=_useState4[1];var borderColor=error?theme.colors.border.danger:theme.colors.border.primary;var handleFocus=function handleFocus(e){onFocus&&onFocus(e);setIsFocus(true);};var handleBlur=function handleBlur(e){onBlur&&onBlur(e);setIsFocus(false);};var focusStyles=isFocus&&{borderRadius:4,borderColor:error?"rgba(255, 105, 105, 0.3)":theme.colors.border.grey400,borderWidth:inline?"0px":"3px",borderStyle:"solid"};var disabledStyles=disabled&&{opacity:0.5,bg:theme.colors.background.secondary};var inlineInputStyles=isFocus&&{backgroundColor:error?theme.colors.border.danger:theme.colors.border.base};return _react.default.createElement(_.Container,{mb:20,__self:_this,__source:{fileName:_jsxFileName,lineNumber:116,columnNumber:5}},!inline&&_react.default.createElement(LabelText,{inline:inline,label:label,__self:_this,__source:{fileName:_jsxFileName,lineNumber:117,columnNumber:19}}),_react.default.createElement(_.Container,(0,_extends2.default)({},focusStyles,disabledStyles,{flexDirection:inline?"row":"column",onBlur:handleBlur,onFocus:handleFocus,position:"relative",__self:_this,__source:{fileName:_jsxFileName,lineNumber:118,columnNumber:7}}),inline&&_react.default.createElement(_.Container,{alignSelf:"flex-end",maxWidth:100,px:2,__self:_this,__source:{fileName:_jsxFileName,lineNumber:127,columnNumber:11}},_react.default.createElement(LabelText,{inline:inline,label:label,__self:_this,__source:{fileName:_jsxFileName,lineNumber:128,columnNumber:13}})),_react.default.createElement(_.Container,{flexDirection:"row",width:"100%",__self:_this,__source:{fileName:_jsxFileName,lineNumber:131,columnNumber:9}},brandLeft&&_react.default.createElement(InputText,{text:brandLeft,borderColor:borderColor,brandColor:brandColor,brandBackground:brandBackground,__self:_this,__source:{fileName:_jsxFileName,lineNumber:133,columnNumber:13}}),_react.default.createElement(TextInput,(0,_extends2.default)({ref:ref,height:40,flex:1,textStyle:"subtext"},rest,{border:!inline&&borderColor,editable:!disabled,color:error?theme.colors.font.danger:theme.colors.font.primary,secureTextEntry:secureTextEntry&&!isPasswordVisible,__self:_this,__source:{fileName:_jsxFileName,lineNumber:140,columnNumber:11}})),brandRight&&_react.default.createElement(InputText,{text:brandRight,borderColor:borderColor,brandColor:brandColor,brandBackground:brandBackground,__self:_this,__source:{fileName:_jsxFileName,lineNumber:153,columnNumber:13}})),secureTextEntry&&_react.default.createElement(_.Container,{position:"absolute",left:"90%",height:"100%",justifyContent:"center",__self:_this,__source:{fileName:_jsxFileName,lineNumber:162,columnNumber:11}},_react.default.createElement(_reactNativeRemixIcon.default,{name:isPasswordVisible?"eye-line":"eye-off-line",color:theme.colors.background.grey500,onPress:function onPress(){return setIsPasswordVisible(!isPasswordVisible);},__self:_this,__source:{fileName:_jsxFileName,lineNumber:168,columnNumber:13}}))),inline&&_react.default.createElement(View,(0,_extends2.default)({backgroundColor:theme.colors.border.primary,height:1},inlineInputStyles,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:177,columnNumber:9}})),_react.default.createElement(ErrorMessage,{theme:theme,error:error,message:message,__self:_this,__source:{fileName:_jsxFileName,lineNumber:183,columnNumber:7}}));});exports.Input=Input;var InputText=function InputText(_ref){var text=_ref.text,borderColor=_ref.borderColor,brandColor=_ref.brandColor,brandBackground=_ref.brandBackground;return _react.default.createElement(_.Container,{bg:brandBackground,justifyContent:"center",px:2,borderColor:borderColor,borderWidth:"1px",__self:_this,__source:{fileName:_jsxFileName,lineNumber:189,columnNumber:3}},text&&_react.default.createElement(_.Typography,{color:brandColor,__self:_this,__source:{fileName:_jsxFileName,lineNumber:196,columnNumber:14}},text));};var LabelText=function LabelText(_ref2){var inline=_ref2.inline,label=_ref2.label;return _react.default.createElement(_.Typography,{numberOfLines:1,textStyle:"subtext",mb:inline?"12px":"7px",__self:_this,__source:{fileName:_jsxFileName,lineNumber:201,columnNumber:3}},label);};var ErrorMessage=function ErrorMessage(_ref3){var error=_ref3.error,message=_ref3.message,theme=_ref3.theme;if(error){return _react.default.createElement(_.Typography,{textStyle:"subtext",color:theme.colors.font.danger,__self:_this,__source:{fileName:_jsxFileName,lineNumber:213,columnNumber:7}},message);}return null;};Input.propTypes=(0,_extends2.default)({},_propTypes.default.flexbox,_propTypes.default.space,_propTypes.default.border,_propTypes.default.buttonStyle,{label:_propTypes2.default.string.isRequired,message:_propTypes2.default.string,error:_propTypes2.default.bool,inline:_propTypes2.default.bool,brandRight:_propTypes2.default.string,brandLeft:_propTypes2.default.string,disabled:_propTypes2.default.bool,brandColor:_propTypes2.default.string,brandBackground:_propTypes2.default.string,secureTextEntry:_propTypes2.default.bool,children:_propTypes2.default.node});InputText.propTypes={text:_propTypes2.default.string,borderColor:_propTypes2.default.string,brandColor:_propTypes2.default.string,brandBackground:_propTypes2.default.string};LabelText.propTypes={inline:_propTypes2.default.bool,label:_propTypes2.default.string};ErrorMessage.propTypes={error:_propTypes2.default.bool,message:_propTypes2.default.string};TextInput.defaultProps={height:40,border:1,px:2,fontFamily:"inter400",fontSize:"14px",borderRadius:2};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.Toast=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _objectWithoutProperties2=_interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));var React=_interopRequireWildcard(require("react"));var _propTypes=_interopRequireDefault(require("prop-types"));var _reactNativeToastMessage=_interopRequireDefault(require("react-native-toast-message"));var _config=require("../config");var _excluded=["toasterConfig"];var _this=this,_jsxFileName="/Users/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/Toast.js";function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj.default=obj;if(cache){cache.set(obj,newObj);}return newObj;}var Toast=function Toast(_ref){var toasterConfig=_ref.toasterConfig,rest=(0,_objectWithoutProperties2.default)(_ref,_excluded);return React.createElement(_reactNativeToastMessage.default,(0,_extends2.default)({},rest,{config:(0,_extends2.default)({},_config.defaultToasterConfig,toasterConfig),__self:_this,__source:{fileName:_jsxFileName,lineNumber:48,columnNumber:10}}));};exports.Toast=Toast;Toast.show=_reactNativeToastMessage.default.show;Toast.hide=_reactNativeToastMessage.default.hide;Toast.propTypes={toasterConfig:_propTypes.default.object};
|
package/lib/components/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"Avatar",{enumerable:true,get:function get(){return _Avatar.Avatar;}});Object.defineProperty(exports,"Badge",{enumerable:true,get:function get(){return _Badge.Badge;}});Object.defineProperty(exports,"BottomSheet",{enumerable:true,get:function get(){return _BottomSheet.BottomSheet;}});Object.defineProperty(exports,"Button",{enumerable:true,get:function get(){return _Button.Button;}});Object.defineProperty(exports,"Chip",{enumerable:true,get:function get(){return _Chip.Chip;}});Object.defineProperty(exports,"Container",{enumerable:true,get:function get(){return _Container.Container;}});Object.defineProperty(exports,"FAB",{enumerable:true,get:function get(){return _FAB.FAB;}});Object.defineProperty(exports,"Input",{enumerable:true,get:function get(){return _Input.Input;}});Object.defineProperty(exports,"ToggleSwitch",{enumerable:true,get:function get(){return _ToggleSwitch.ToggleSwitch;}});Object.defineProperty(exports,"Typography",{enumerable:true,get:function get(){return _Typography.Typography;}});var _Button=require("./Button");var _Container=require("./Container");var _Typography=require("./Typography");var _Input=require("./Input");var _FAB=require("./FAB");var _ToggleSwitch=require("./ToggleSwitch");var _Avatar=require("./Avatar");var _Badge=require("./Badge");var _BottomSheet=require("./BottomSheet");var _Chip=require("./Chip");
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"Avatar",{enumerable:true,get:function get(){return _Avatar.Avatar;}});Object.defineProperty(exports,"Badge",{enumerable:true,get:function get(){return _Badge.Badge;}});Object.defineProperty(exports,"BottomSheet",{enumerable:true,get:function get(){return _BottomSheet.BottomSheet;}});Object.defineProperty(exports,"Button",{enumerable:true,get:function get(){return _Button.Button;}});Object.defineProperty(exports,"Chip",{enumerable:true,get:function get(){return _Chip.Chip;}});Object.defineProperty(exports,"Container",{enumerable:true,get:function get(){return _Container.Container;}});Object.defineProperty(exports,"FAB",{enumerable:true,get:function get(){return _FAB.FAB;}});Object.defineProperty(exports,"Input",{enumerable:true,get:function get(){return _Input.Input;}});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,"Typography",{enumerable:true,get:function get(){return _Typography.Typography;}});var _Button=require("./Button");var _Container=require("./Container");var _Typography=require("./Typography");var _Input=require("./Input");var _FAB=require("./FAB");var _ToggleSwitch=require("./ToggleSwitch");var _Avatar=require("./Avatar");var _Badge=require("./Badge");var _Toast=require("./Toast");var _BottomSheet=require("./BottomSheet");var _Chip=require("./Chip");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"defaultToasterConfig",{enumerable:true,get:function get(){return _toasterConfig.defaultToasterConfig;}});var _toasterConfig=require("./toasterConfig");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.defaultToasterConfig=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _react=_interopRequireDefault(require("react"));var _reactNativeToastMessage=_interopRequireWildcard(require("react-native-toast-message"));var _reactNative=require("react-native");var _reactNativeRemixIcon=_interopRequireDefault(require("react-native-remix-icon"));var _theme=require("../theme");var _this=this,_jsxFileName="/Users/runner/work/neeto-ui-rn/neeto-ui-rn/src/config/toasterConfig.js";function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj.default=obj;if(cache){cache.set(obj,newObj);}return newObj;}var CloseButton=function CloseButton(){return _react.default.createElement(_reactNative.Pressable,{style:styles.closeButtonStyle,onPress:_reactNativeToastMessage.default.hide,__self:_this,__source:{fileName:_jsxFileName,lineNumber:10,columnNumber:5}},_react.default.createElement(_reactNativeRemixIcon.default,{name:"ri-close-fill",size:25,color:_theme.theme.colors.background.white,__self:_this,__source:{fileName:_jsxFileName,lineNumber:11,columnNumber:7}}));};var defaultToasterConfig={success:function success(props){return _react.default.createElement(_reactNativeToastMessage.BaseToast,(0,_extends2.default)({},props,{style:styles.successStyle,leadingIconContainerStyle:styles.toasterBGColor,renderTrailingIcon:function renderTrailingIcon(){return _react.default.createElement(CloseButton,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:26,columnNumber:33}});},contentContainerStyle:styles.contentContainerStyle,text1Style:styles.text1Style,text2Style:styles.text2Style,__self:_this,__source:{fileName:_jsxFileName,lineNumber:22,columnNumber:5}}));},error:function error(props){return _react.default.createElement(_reactNativeToastMessage.BaseToast,(0,_extends2.default)({},props,{style:styles.errorStyle,leadingIconContainerStyle:styles.toasterBGColor,renderTrailingIcon:function renderTrailingIcon(){return _react.default.createElement(CloseButton,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:37,columnNumber:33}});},contentContainerStyle:styles.contentContainerStyle,text1Style:styles.text1Style,text2Style:styles.text2Style,__self:_this,__source:{fileName:_jsxFileName,lineNumber:33,columnNumber:5}}));}};exports.defaultToasterConfig=defaultToasterConfig;defaultToasterConfig.success.displayName="Success";defaultToasterConfig.error.displayName="Error";var styles=_reactNative.StyleSheet.create({successStyle:{borderLeftColor:_theme.theme.colors.toast.success,backgroundColor:_theme.theme.colors.background.grey800},errorStyle:{borderLeftColor:_theme.theme.colors.toast.error,backgroundColor:_theme.theme.colors.background.grey800},toasterBGColor:{backgroundColor:_theme.theme.colors.background.grey800},contentContainerStyle:{paddingHorizontal:15,backgroundColor:_theme.theme.colors.background.grey800},text1Style:{fontSize:15,fontFamily:_theme.theme.fonts.inter700,color:_theme.theme.colors.font.white},text2Style:{fontSize:16,fontFamily:_theme.theme.fonts.inter700,color:_theme.theme.colors.font.white},closeButtonStyle:{justifyContent:"center",alignItems:"center",paddingRight:10,backgroundColor:_theme.theme.colors.background.grey800,shadowColor:_theme.theme.colors.background.grey800,flexDirection:"row",borderTopRightRadius:6,borderBottomRightRadius:6,shadowOffset:{width:0,height:0},shadowOpacity:0.1,shadowRadius:6,elevation:2}});
|
package/lib/theme/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.theme=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var defaultColors={white:"#ffffff",black:"#000000",base:"#2f3941",danger:"#ff6969",menubackground:"#f4f5f7"};var greyVarients={grey:"#828282",grey100:"#f8f9f9",grey200:"#e9ebed",grey300:"#d8dcde",grey400:"#c2c8cc",grey500:"#87929d",grey600:"#68737d",grey800:"#2f3941"};var colors={font:(0,_extends2.default)({primary:"#1b1f23",secondary:"#828282"},defaultColors,greyVarients),background:(0,_extends2.default)({primary:"#ffffff",secondary:"#e4e4e7"},defaultColors,greyVarients),border:(0,_extends2.default)({primary:"#e4e4e7"},greyVarients,defaultColors)};var baseTheme={colors:colors,fonts:{inter400:"Inter-Regular",inter700:"Inter-Bold"},lineHeights:[24],fontSizes:{xs:10,s:12,m:14,l:18,xl:24,xxl:32}};baseTheme.lineHeights.note=baseTheme.lineHeights[0]+"px";var theme=(0,_extends2.default)({},baseTheme,{textStyles:{defaultTextStyle:{color:baseTheme.colors.font.primary},header:{color:baseTheme.colors.font.primary,fontSize:baseTheme.fontSizes.l,fontFamily:baseTheme.fonts.inter700},body:{color:baseTheme.colors.font.primary,fontSize:baseTheme.fontSizes.m},subtext:{color:baseTheme.colors.font.primary,fontSize:baseTheme.fontSizes.s},solid:{color:baseTheme.colors.font.white},inverse:{color:baseTheme.colors.font.base},text:{color:baseTheme.colors.font.base}},buttons:{solid:{backgroundColor:baseTheme.colors.background.base},inverse:{border:2,borderColor:baseTheme.colors.border.base,backgroundColor:baseTheme.colors.background.white},text:{color:baseTheme.colors.font.grey800,backgroundColor:baseTheme.colors.background.white}}});exports.theme=theme;
|
|
1
|
+
var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.theme=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var defaultColors={white:"#ffffff",black:"#000000",base:"#2f3941",danger:"#ff6969",menubackground:"#f4f5f7"};var toastBorderColors={success:"#69C779",error:"#FE6301"};var greyVarients={grey:"#828282",grey100:"#f8f9f9",grey200:"#e9ebed",grey300:"#d8dcde",grey400:"#c2c8cc",grey500:"#87929d",grey600:"#68737d",grey800:"#2f3941"};var colors={font:(0,_extends2.default)({primary:"#1b1f23",secondary:"#828282"},defaultColors,greyVarients),background:(0,_extends2.default)({primary:"#ffffff",secondary:"#e4e4e7"},defaultColors,greyVarients),border:(0,_extends2.default)({primary:"#e4e4e7"},greyVarients,defaultColors),toast:(0,_extends2.default)({},toastBorderColors)};var baseTheme={colors:colors,fonts:{inter400:"Inter-Regular",inter700:"Inter-Bold"},lineHeights:[24],fontSizes:{xs:10,s:12,m:14,l:18,xl:24,xxl:32}};baseTheme.lineHeights.note=baseTheme.lineHeights[0]+"px";var theme=(0,_extends2.default)({},baseTheme,{textStyles:{defaultTextStyle:{color:baseTheme.colors.font.primary},header:{color:baseTheme.colors.font.primary,fontSize:baseTheme.fontSizes.l,fontFamily:baseTheme.fonts.inter700},body:{color:baseTheme.colors.font.primary,fontSize:baseTheme.fontSizes.m},subtext:{color:baseTheme.colors.font.primary,fontSize:baseTheme.fontSizes.s},solid:{color:baseTheme.colors.font.white},inverse:{color:baseTheme.colors.font.base},text:{color:baseTheme.colors.font.base}},buttons:{solid:{backgroundColor:baseTheme.colors.background.base},inverse:{border:2,borderColor:baseTheme.colors.border.base,backgroundColor:baseTheme.colors.background.white},text:{color:baseTheme.colors.font.grey800,backgroundColor:baseTheme.colors.background.white}}});exports.theme=theme;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bigbinary/neetoui-rn",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.47",
|
|
4
4
|
"main": "lib/index.js",
|
|
5
5
|
"author": "BigBinary",
|
|
6
6
|
"license": "MIT",
|
|
@@ -52,6 +52,7 @@
|
|
|
52
52
|
"react-native-modal": "^13.0.0",
|
|
53
53
|
"react-native-remix-icon": "^0.3.0",
|
|
54
54
|
"react-native-switch-toggle": "^2.2.1",
|
|
55
|
+
"react-native-toast-message": "^2.1.0",
|
|
55
56
|
"styled-components": "^5.3.3",
|
|
56
57
|
"styled-system": "^5.1.5"
|
|
57
58
|
},
|
package/src/components/Input.js
CHANGED
|
@@ -8,6 +8,7 @@ import {
|
|
|
8
8
|
color,
|
|
9
9
|
layout,
|
|
10
10
|
} from "styled-system";
|
|
11
|
+
import Icon from "react-native-remix-icon";
|
|
11
12
|
import styled, { ThemeContext } from "styled-components/native";
|
|
12
13
|
import propTypes from "@styled-system/prop-types";
|
|
13
14
|
import PropTypes from "prop-types";
|
|
@@ -57,21 +58,25 @@ const View = styled.View`
|
|
|
57
58
|
*
|
|
58
59
|
*/
|
|
59
60
|
|
|
60
|
-
export const Input = ({
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
61
|
+
export const Input = React.forwardRef((props, ref) => {
|
|
62
|
+
const {
|
|
63
|
+
label = "",
|
|
64
|
+
message = "",
|
|
65
|
+
error = false,
|
|
66
|
+
onFocus,
|
|
67
|
+
onBlur,
|
|
68
|
+
inline = false,
|
|
69
|
+
brandRight,
|
|
70
|
+
brandLeft,
|
|
71
|
+
brandColor = "font.grey600",
|
|
72
|
+
brandBackground = "background.menubackground",
|
|
73
|
+
disabled = false,
|
|
74
|
+
secureTextEntry = false,
|
|
75
|
+
...rest
|
|
76
|
+
} = props;
|
|
77
|
+
|
|
74
78
|
const theme = useContext(ThemeContext);
|
|
79
|
+
const [isPasswordVisible, setIsPasswordVisible] = useState(false);
|
|
75
80
|
const [isFocus, setIsFocus] = useState(false);
|
|
76
81
|
const borderColor = error
|
|
77
82
|
? theme.colors.border.danger
|
|
@@ -116,6 +121,7 @@ export const Input = ({
|
|
|
116
121
|
flexDirection={inline ? "row" : "column"}
|
|
117
122
|
onBlur={handleBlur}
|
|
118
123
|
onFocus={handleFocus}
|
|
124
|
+
position="relative"
|
|
119
125
|
>
|
|
120
126
|
{inline && (
|
|
121
127
|
<Container alignSelf="flex-end" maxWidth={100} px={2}>
|
|
@@ -132,6 +138,7 @@ export const Input = ({
|
|
|
132
138
|
/>
|
|
133
139
|
)}
|
|
134
140
|
<TextInput
|
|
141
|
+
ref={ref}
|
|
135
142
|
height={40}
|
|
136
143
|
flex={1}
|
|
137
144
|
textStyle="subtext"
|
|
@@ -139,7 +146,9 @@ export const Input = ({
|
|
|
139
146
|
border={!inline && borderColor}
|
|
140
147
|
editable={!disabled}
|
|
141
148
|
color={error ? theme.colors.font.danger : theme.colors.font.primary}
|
|
149
|
+
secureTextEntry={secureTextEntry && !isPasswordVisible}
|
|
142
150
|
/>
|
|
151
|
+
|
|
143
152
|
{brandRight && (
|
|
144
153
|
<InputText
|
|
145
154
|
text={brandRight}
|
|
@@ -149,6 +158,20 @@ export const Input = ({
|
|
|
149
158
|
/>
|
|
150
159
|
)}
|
|
151
160
|
</Container>
|
|
161
|
+
{secureTextEntry && (
|
|
162
|
+
<Container
|
|
163
|
+
position="absolute"
|
|
164
|
+
left="90%"
|
|
165
|
+
height="100%"
|
|
166
|
+
justifyContent="center"
|
|
167
|
+
>
|
|
168
|
+
<Icon
|
|
169
|
+
name={isPasswordVisible ? "eye-line" : "eye-off-line"}
|
|
170
|
+
color={theme.colors.background.grey500}
|
|
171
|
+
onPress={() => setIsPasswordVisible(!isPasswordVisible)}
|
|
172
|
+
/>
|
|
173
|
+
</Container>
|
|
174
|
+
)}
|
|
152
175
|
</Container>
|
|
153
176
|
{inline && (
|
|
154
177
|
<View
|
|
@@ -160,7 +183,7 @@ export const Input = ({
|
|
|
160
183
|
<ErrorMessage theme={theme} error={error} message={message} />
|
|
161
184
|
</Container>
|
|
162
185
|
);
|
|
163
|
-
};
|
|
186
|
+
});
|
|
164
187
|
|
|
165
188
|
const InputText = ({ text, borderColor, brandColor, brandBackground }) => (
|
|
166
189
|
<Container
|
|
@@ -236,6 +259,10 @@ Input.propTypes = {
|
|
|
236
259
|
* To change the color of brand text
|
|
237
260
|
*/
|
|
238
261
|
brandBackground: PropTypes.string,
|
|
262
|
+
/**
|
|
263
|
+
* To hide and show password and enable secure text entry
|
|
264
|
+
*/
|
|
265
|
+
secureTextEntry: PropTypes.bool,
|
|
239
266
|
children: PropTypes.node,
|
|
240
267
|
};
|
|
241
268
|
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import PropTypes from "prop-types";
|
|
3
|
+
import T from "react-native-toast-message";
|
|
4
|
+
import { defaultToasterConfig } from "@config";
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Toast component is a wrapper over https://github.com/calintamas/react-native-toast-message.
|
|
8
|
+
*
|
|
9
|
+
* ## Usage
|
|
10
|
+
* ```js
|
|
11
|
+
*import { Toast } from "@bigbinary/neetoui-rn";
|
|
12
|
+
*
|
|
13
|
+
*export function App(props) {
|
|
14
|
+
* return (
|
|
15
|
+
* <>
|
|
16
|
+
* // Render at root component.
|
|
17
|
+
* <Toast />
|
|
18
|
+
* </>
|
|
19
|
+
* );
|
|
20
|
+
*}
|
|
21
|
+
*
|
|
22
|
+
*
|
|
23
|
+
*import * as React from "react";
|
|
24
|
+
*import { Toast, Container, Button } from "@bigbinary/neetoui-rn";
|
|
25
|
+
*
|
|
26
|
+
*export default function Main() {
|
|
27
|
+
* return (
|
|
28
|
+
* <Container>
|
|
29
|
+
* <Button
|
|
30
|
+
* label="Error Test"
|
|
31
|
+
* onPress={() => {
|
|
32
|
+
* Toast.show({
|
|
33
|
+
* type: "error",
|
|
34
|
+
* position: "bottom",
|
|
35
|
+
* text1: "Yay!",
|
|
36
|
+
* text2: "Have a nice day! 😄",
|
|
37
|
+
* });
|
|
38
|
+
* }}
|
|
39
|
+
* />
|
|
40
|
+
* </Container>
|
|
41
|
+
* );
|
|
42
|
+
*}
|
|
43
|
+
* ```
|
|
44
|
+
* @extends StyledSystems props /styled-system
|
|
45
|
+
*/
|
|
46
|
+
|
|
47
|
+
export const Toast = ({ toasterConfig, ...rest }) => {
|
|
48
|
+
return <T {...rest} config={{ ...defaultToasterConfig, ...toasterConfig }} />;
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
Toast.show = T.show;
|
|
52
|
+
Toast.hide = T.hide;
|
|
53
|
+
|
|
54
|
+
Toast.propTypes = {
|
|
55
|
+
/**
|
|
56
|
+
* configuration
|
|
57
|
+
*/
|
|
58
|
+
toasterConfig: PropTypes.object,
|
|
59
|
+
};
|
package/src/components/index.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { defaultToasterConfig } from "./toasterConfig";
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import Toast, { BaseToast } from "react-native-toast-message";
|
|
3
|
+
import { Pressable, StyleSheet } from "react-native";
|
|
4
|
+
import Icon from "react-native-remix-icon";
|
|
5
|
+
|
|
6
|
+
import { theme } from "@theme";
|
|
7
|
+
|
|
8
|
+
const CloseButton = () => {
|
|
9
|
+
return (
|
|
10
|
+
<Pressable style={styles.closeButtonStyle} onPress={Toast.hide}>
|
|
11
|
+
<Icon
|
|
12
|
+
name="ri-close-fill"
|
|
13
|
+
size={25}
|
|
14
|
+
color={theme.colors.background.white}
|
|
15
|
+
/>
|
|
16
|
+
</Pressable>
|
|
17
|
+
);
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
export const defaultToasterConfig = {
|
|
21
|
+
success: props => (
|
|
22
|
+
<BaseToast
|
|
23
|
+
{...props}
|
|
24
|
+
style={styles.successStyle}
|
|
25
|
+
leadingIconContainerStyle={styles.toasterBGColor}
|
|
26
|
+
renderTrailingIcon={() => <CloseButton />}
|
|
27
|
+
contentContainerStyle={styles.contentContainerStyle}
|
|
28
|
+
text1Style={styles.text1Style}
|
|
29
|
+
text2Style={styles.text2Style}
|
|
30
|
+
/>
|
|
31
|
+
),
|
|
32
|
+
error: props => (
|
|
33
|
+
<BaseToast
|
|
34
|
+
{...props}
|
|
35
|
+
style={styles.errorStyle}
|
|
36
|
+
leadingIconContainerStyle={styles.toasterBGColor}
|
|
37
|
+
renderTrailingIcon={() => <CloseButton />}
|
|
38
|
+
contentContainerStyle={styles.contentContainerStyle}
|
|
39
|
+
text1Style={styles.text1Style}
|
|
40
|
+
text2Style={styles.text2Style}
|
|
41
|
+
/>
|
|
42
|
+
),
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
defaultToasterConfig.success.displayName = "Success";
|
|
46
|
+
defaultToasterConfig.error.displayName = "Error";
|
|
47
|
+
|
|
48
|
+
const styles = StyleSheet.create({
|
|
49
|
+
successStyle: {
|
|
50
|
+
borderLeftColor: theme.colors.toast.success,
|
|
51
|
+
backgroundColor: theme.colors.background.grey800,
|
|
52
|
+
},
|
|
53
|
+
errorStyle: {
|
|
54
|
+
borderLeftColor: theme.colors.toast.error,
|
|
55
|
+
backgroundColor: theme.colors.background.grey800,
|
|
56
|
+
},
|
|
57
|
+
toasterBGColor: { backgroundColor: theme.colors.background.grey800 },
|
|
58
|
+
contentContainerStyle: {
|
|
59
|
+
paddingHorizontal: 15,
|
|
60
|
+
backgroundColor: theme.colors.background.grey800,
|
|
61
|
+
},
|
|
62
|
+
text1Style: {
|
|
63
|
+
fontSize: 15,
|
|
64
|
+
fontFamily: theme.fonts.inter700,
|
|
65
|
+
color: theme.colors.font.white,
|
|
66
|
+
},
|
|
67
|
+
text2Style: {
|
|
68
|
+
fontSize: 16,
|
|
69
|
+
fontFamily: theme.fonts.inter700,
|
|
70
|
+
color: theme.colors.font.white,
|
|
71
|
+
},
|
|
72
|
+
closeButtonStyle: {
|
|
73
|
+
justifyContent: "center",
|
|
74
|
+
alignItems: "center",
|
|
75
|
+
paddingRight: 10,
|
|
76
|
+
backgroundColor: theme.colors.background.grey800,
|
|
77
|
+
shadowColor: theme.colors.background.grey800,
|
|
78
|
+
flexDirection: "row",
|
|
79
|
+
borderTopRightRadius: 6,
|
|
80
|
+
borderBottomRightRadius: 6,
|
|
81
|
+
shadowOffset: { width: 0, height: 0 },
|
|
82
|
+
shadowOpacity: 0.1,
|
|
83
|
+
shadowRadius: 6,
|
|
84
|
+
elevation: 2,
|
|
85
|
+
},
|
|
86
|
+
});
|
package/src/theme/index.js
CHANGED
|
@@ -6,6 +6,11 @@ const defaultColors = {
|
|
|
6
6
|
menubackground: "#f4f5f7",
|
|
7
7
|
};
|
|
8
8
|
|
|
9
|
+
const toastBorderColors = {
|
|
10
|
+
success: "#69C779",
|
|
11
|
+
error: "#FE6301",
|
|
12
|
+
};
|
|
13
|
+
|
|
9
14
|
const greyVarients = {
|
|
10
15
|
grey: "#828282",
|
|
11
16
|
grey100: "#f8f9f9",
|
|
@@ -35,6 +40,9 @@ const colors = {
|
|
|
35
40
|
...greyVarients,
|
|
36
41
|
...defaultColors,
|
|
37
42
|
},
|
|
43
|
+
toast: {
|
|
44
|
+
...toastBorderColors,
|
|
45
|
+
},
|
|
38
46
|
};
|
|
39
47
|
|
|
40
48
|
const baseTheme = {
|