@bigbinary/neetoui-rn 0.0.29 → 0.0.33
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/FAB.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.TouchableOpacity=exports.FAB=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));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=_interopRequireDefault(require("styled-components/native"));var _propTypes=_interopRequireDefault(require("@styled-system/prop-types"));var _propTypes2=_interopRequireDefault(require("prop-types"));var _excluded=["Icon","bg","disabled"];var _templateObject,_this=this,_jsxFileName="/Users/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/FAB.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 TouchableOpacity=_native.default.TouchableOpacity(_templateObject||(_templateObject=(0,_taggedTemplateLiteralLoose2.default)(["\n ","\n ","\n ","\n ","\n ","\n ","\n"])),_styledSystem.buttonStyle,_styledSystem.flexbox,_styledSystem.space,_styledSystem.border,_styledSystem.layout,_styledSystem.color);exports.TouchableOpacity=TouchableOpacity;var FAB=function FAB(_ref){var Icon=_ref.Icon,bg=_ref.bg,disabled=_ref.disabled,rest=(0,_objectWithoutProperties2.default)(_ref,_excluded);var shadowStyle={shadowColor:"#000",shadowOffset:{width:0,height:2},shadowOpacity:0.25,shadowRadius:3.84,elevation:5};var style=rest.style||{};if(disabled){style=(0,_extends2.default)({},style,{opacity:0.5});}return React.createElement(TouchableOpacity,(0,_extends2.default)({bg:bg,disabled:disabled
|
|
1
|
+
var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.TouchableOpacity=exports.FAB=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));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=_interopRequireDefault(require("styled-components/native"));var _propTypes=_interopRequireDefault(require("@styled-system/prop-types"));var _propTypes2=_interopRequireDefault(require("prop-types"));var _excluded=["Icon","bg","disabled","variant","onPress"];var _templateObject,_this=this,_jsxFileName="/Users/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/FAB.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 TouchableOpacity=_native.default.TouchableOpacity(_templateObject||(_templateObject=(0,_taggedTemplateLiteralLoose2.default)(["\n ","\n ","\n ","\n ","\n ","\n ","\n"])),_styledSystem.buttonStyle,_styledSystem.flexbox,_styledSystem.space,_styledSystem.border,_styledSystem.layout,_styledSystem.color);exports.TouchableOpacity=TouchableOpacity;var FAB=function FAB(_ref){var Icon=_ref.Icon,bg=_ref.bg,disabled=_ref.disabled,variant=_ref.variant,onPress=_ref.onPress,rest=(0,_objectWithoutProperties2.default)(_ref,_excluded);var shadowStyle={shadowColor:"#000",shadowOffset:{width:0,height:2},shadowOpacity:0.25,shadowRadius:3.84,elevation:5};var style=rest.style||{};if(disabled){style=(0,_extends2.default)({},style,{opacity:0.5});}return React.createElement(TouchableOpacity,(0,_extends2.default)({bg:variant!=="inverse"&&bg,disabled:disabled,variant:variant,onPress:onPress,style:[style,shadowStyle],borderColor:variant==="inverse"&&bg},rest,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:79,columnNumber:5}}),React.createElement(Icon,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:88,columnNumber:7}}));};exports.FAB=FAB;FAB.defaultProps={variant:"solid",size:56,alignItems:"center",justifyContent:"center",borderRadius:28};FAB.propTypes=(0,_extends2.default)({},_propTypes.default.flexbox,_propTypes.default.space,_propTypes.default.border,_propTypes.default.layout,_propTypes.default.color,{Icon:_propTypes2.default.elementType.isRequired,onPress:_propTypes2.default.func.isRequired});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.ToggleSwitch=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _objectWithoutProperties2=_interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));var _react=_interopRequireWildcard(require("react"));var _reactNativeSwitchToggle=_interopRequireDefault(require("react-native-switch-toggle"));var _native=require("styled-components/native");var _reactNative=require("react-native");var _propTypes=_interopRequireDefault(require("prop-types"));var _=require("./");var _excluded=["value","onValueChange","label","disabled"];var _this=this,_jsxFileName="/Users/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/ToggleSwitch.js";function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj.default=obj;if(cache){cache.set(obj,newObj);}return newObj;}var ToggleSwitch=function ToggleSwitch(_ref){var value=_ref.value,onValueChange=_ref.onValueChange,label=_ref.label,disabled=_ref.disabled,rest=(0,_objectWithoutProperties2.default)(_ref,_excluded);var theme=(0,_react.useContext)(_native.ThemeContext);var circleColorOn=disabled?theme.colors.background.grey500:theme.colors.background.white;var circleColorOff=disabled?theme.colors.background.menubackground:theme.colors.background.white;return _react.default.createElement(_.Container,(0,_extends2.default)({flexDirection:"row",borderColor:theme.colors.border.primary,alignItems:"center"},rest,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:
|
|
1
|
+
var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.ToggleSwitch=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _objectWithoutProperties2=_interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));var _react=_interopRequireWildcard(require("react"));var _reactNativeSwitchToggle=_interopRequireDefault(require("react-native-switch-toggle"));var _native=require("styled-components/native");var _reactNative=require("react-native");var _propTypes=_interopRequireDefault(require("prop-types"));var _=require("./");var _excluded=["value","onValueChange","label","disabled"];var _this=this,_jsxFileName="/Users/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/ToggleSwitch.js";function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap();var cacheNodeInterop=new WeakMap();return(_getRequireWildcardCache=function _getRequireWildcardCache(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj;}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj};}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj);}var newObj={};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc);}else{newObj[key]=obj[key];}}}newObj.default=obj;if(cache){cache.set(obj,newObj);}return newObj;}var ToggleSwitch=function ToggleSwitch(_ref){var value=_ref.value,onValueChange=_ref.onValueChange,label=_ref.label,disabled=_ref.disabled,rest=(0,_objectWithoutProperties2.default)(_ref,_excluded);var theme=(0,_react.useContext)(_native.ThemeContext);var circleColorOn=disabled?theme.colors.background.grey500:theme.colors.background.white;var circleColorOff=disabled?theme.colors.background.menubackground:theme.colors.background.white;return _react.default.createElement(_.Container,(0,_extends2.default)({flexDirection:"row",borderColor:theme.colors.border.primary,alignItems:"center"},rest,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:58,columnNumber:5}}),_react.default.createElement(_.Typography,{flex:0.8,textStyle:"subtext",__self:_this,__source:{fileName:_jsxFileName,lineNumber:64,columnNumber:7}},label),_react.default.createElement(_.Container,{flex:0.2,alignItems:"flex-end",__self:_this,__source:{fileName:_jsxFileName,lineNumber:67,columnNumber:7}},_react.default.createElement(_reactNativeSwitchToggle.default,(0,_extends2.default)({switchOn:value,onPress:function onPress(){return!disabled&&onValueChange();},circleColorOn:circleColorOn,circleColorOff:circleColorOff,backgroundColorOff:theme.colors.background.grey200,backgroundColor:theme.colors.background.grey800,containerStyle:styles.containerStyle,circleStyle:styles.circleStyle},rest,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:68,columnNumber:9}}))));};exports.ToggleSwitch=ToggleSwitch;ToggleSwitch.defaultProps={borderWidth:1,borderRadius:2,p:3};ToggleSwitch.propTypes={label:_propTypes.default.string.isRequired,value:_propTypes.default.bool.isRequired,onValueChange:_propTypes.default.func,disabled:_propTypes.default.bool};var styles=_reactNative.StyleSheet.create({containerStyle:{width:38,height:18,borderRadius:10,padding:2},circleStyle:{width:14,height:14,borderRadius:7}});
|
package/package.json
CHANGED
package/src/components/FAB.js
CHANGED
|
@@ -20,7 +20,46 @@ export const TouchableOpacity = styled.TouchableOpacity`
|
|
|
20
20
|
${color}
|
|
21
21
|
`;
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
/**
|
|
24
|
+
* FAB component is a floating action button which represents the primary action in an application and is built on top of styled-system.
|
|
25
|
+
*
|
|
26
|
+
* This component supports below props categories from [styled-system ](/styled-system).
|
|
27
|
+
*
|
|
28
|
+
* <ul>
|
|
29
|
+
* <li>space</li>
|
|
30
|
+
* <li>layout</li>
|
|
31
|
+
* <li>flexbox</li>
|
|
32
|
+
* <li>color</li>
|
|
33
|
+
* <li>textStyle</li>
|
|
34
|
+
* <li>buttonStyle</li>
|
|
35
|
+
* </ul>
|
|
36
|
+
*
|
|
37
|
+
* <div class="screenshots">
|
|
38
|
+
* <img src="screenshots/fab/buttonstyles.png" />
|
|
39
|
+
* </div>
|
|
40
|
+
*
|
|
41
|
+
* ## Usage
|
|
42
|
+
* ```js
|
|
43
|
+
* import * as React from 'react';
|
|
44
|
+
* import { FAB, Container, Typography } from '@bigbinary/neetoui-rn';
|
|
45
|
+
*
|
|
46
|
+
* export default function Main() {
|
|
47
|
+
* return (
|
|
48
|
+
* <Container>
|
|
49
|
+
* <FAB
|
|
50
|
+
* Icon={() => {
|
|
51
|
+
* return <Typography>🔔</Typography>;
|
|
52
|
+
* }}
|
|
53
|
+
* />
|
|
54
|
+
* </Container>
|
|
55
|
+
* );
|
|
56
|
+
* }
|
|
57
|
+
* ```
|
|
58
|
+
*
|
|
59
|
+
* @extends StyledSystems props /styled-system
|
|
60
|
+
*/
|
|
61
|
+
|
|
62
|
+
export const FAB = ({ Icon, bg, disabled, variant, onPress, ...rest }) => {
|
|
24
63
|
const shadowStyle = {
|
|
25
64
|
shadowColor: "#000",
|
|
26
65
|
shadowOffset: {
|
|
@@ -38,10 +77,13 @@ export const FAB = ({ Icon, bg, disabled, ...rest }) => {
|
|
|
38
77
|
}
|
|
39
78
|
return (
|
|
40
79
|
<TouchableOpacity
|
|
41
|
-
bg={bg}
|
|
80
|
+
bg={variant !== "inverse" && bg}
|
|
42
81
|
disabled={disabled}
|
|
43
|
-
{
|
|
82
|
+
variant={variant}
|
|
83
|
+
onPress={onPress}
|
|
44
84
|
style={[style, shadowStyle]}
|
|
85
|
+
borderColor={variant === "inverse" && bg}
|
|
86
|
+
{...rest}
|
|
45
87
|
>
|
|
46
88
|
<Icon />
|
|
47
89
|
</TouchableOpacity>
|
|
@@ -62,5 +104,12 @@ FAB.propTypes = {
|
|
|
62
104
|
...propTypes.border,
|
|
63
105
|
...propTypes.layout,
|
|
64
106
|
...propTypes.color,
|
|
107
|
+
/**
|
|
108
|
+
* Icon to display for the Button.
|
|
109
|
+
*/
|
|
65
110
|
Icon: PropTypes.elementType.isRequired,
|
|
111
|
+
/**
|
|
112
|
+
* Function to execute on press.
|
|
113
|
+
*/
|
|
114
|
+
onPress: PropTypes.func.isRequired,
|
|
66
115
|
};
|
|
@@ -6,6 +6,38 @@ import PropTypes from "prop-types";
|
|
|
6
6
|
|
|
7
7
|
import { Typography, Container } from "@components";
|
|
8
8
|
|
|
9
|
+
/**
|
|
10
|
+
* ToggleSwitch component is a simple switch toggle component from react-native-switch-toggle along with a label which describes what is being switched ON/OFF.
|
|
11
|
+
*
|
|
12
|
+
* This component supports below props categories from [styled-system ](/styled-system).
|
|
13
|
+
*
|
|
14
|
+
* <div class="screenshots">
|
|
15
|
+
* <img src="screenshots/toggleswitch/switchstyles.png" />
|
|
16
|
+
* </div>
|
|
17
|
+
*
|
|
18
|
+
* ## Usage
|
|
19
|
+
* ```js
|
|
20
|
+
* import * as React, {useState} from 'react';
|
|
21
|
+
* import { Typography, Container } from '@bigbinary/neetoui-rn';
|
|
22
|
+
*
|
|
23
|
+
* export default function Main() {
|
|
24
|
+
* const [switchOne, setSwitchOne] = useState(true);
|
|
25
|
+
*
|
|
26
|
+
* return (
|
|
27
|
+
* <Container>
|
|
28
|
+
* <ToggleSwitch
|
|
29
|
+
* value={switchOne}
|
|
30
|
+
* setValue={() => setSwitchOne(prevValue => !prevValue)}
|
|
31
|
+
* label="Conversation assigned to my group"
|
|
32
|
+
* />
|
|
33
|
+
* </Container>
|
|
34
|
+
* );
|
|
35
|
+
* }
|
|
36
|
+
* ```
|
|
37
|
+
*
|
|
38
|
+
* @extends StyledSystems props /styled-system
|
|
39
|
+
*/
|
|
40
|
+
|
|
9
41
|
export const ToggleSwitch = ({
|
|
10
42
|
value,
|
|
11
43
|
onValueChange,
|
|
@@ -56,9 +88,21 @@ ToggleSwitch.defaultProps = {
|
|
|
56
88
|
};
|
|
57
89
|
|
|
58
90
|
ToggleSwitch.propTypes = {
|
|
91
|
+
/**
|
|
92
|
+
* The text to use for the floating label.
|
|
93
|
+
*/
|
|
59
94
|
label: PropTypes.string.isRequired,
|
|
95
|
+
/**
|
|
96
|
+
* Value of the switch, true means 'on', false means 'off'.
|
|
97
|
+
*/
|
|
60
98
|
value: PropTypes.bool.isRequired,
|
|
99
|
+
/**
|
|
100
|
+
* Callback called with the new value when it changes.
|
|
101
|
+
*/
|
|
61
102
|
onValueChange: PropTypes.func,
|
|
103
|
+
/**
|
|
104
|
+
* Disable toggling the switch.
|
|
105
|
+
*/
|
|
62
106
|
disabled: PropTypes.bool,
|
|
63
107
|
};
|
|
64
108
|
|