@bigbinary/neetoui-rn 0.0.155 → 0.0.156

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.
@@ -1 +1 @@
1
- var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.Accordion=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 _react=_interopRequireWildcard(require("react"));var _reactNative=require("react-native");var _propTypes=_interopRequireDefault(require("prop-types"));var _reactNativeRemixIcon=_interopRequireDefault(require("react-native-remix-icon"));var _native=require("styled-components/native");var _=require("./");var _excluded=["header","noBorder","iconProp","onStateChanged","children"];var _this=this,_jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/Accordion.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 Accordion=_react.default.forwardRef(function(props,ref){var header=props.header,_props$noBorder=props.noBorder,noBorder=_props$noBorder===void 0?false:_props$noBorder,_props$iconProp=props.iconProp,iconProp=_props$iconProp===void 0?{}:_props$iconProp,onStateChanged=props.onStateChanged,children=props.children,rest=(0,_objectWithoutProperties2.default)(props,_excluded);var name=iconProp.name,Label=iconProp.Label,size=iconProp.size,color=iconProp.color;var theme=(0,_react.useContext)(_native.ThemeContext);var _useState=(0,_react.useState)(false),_useState2=(0,_slicedToArray2.default)(_useState,2),isExpanded=_useState2[0],setExpanded=_useState2[1];var _useState3=(0,_react.useState)(0),_useState4=(0,_slicedToArray2.default)(_useState3,2),viewHeight=_useState4[0],setViewHeight=_useState4[1];var animationController=(0,_react.useRef)(new _reactNative.Animated.Value(isExpanded?1:0)).current;var getLayout=function getLayout(event){var height=event.nativeEvent.layout.height;setViewHeight(height);};(0,_react.useEffect)(function(){_reactNative.Animated.timing(animationController,{duration:300,toValue:isExpanded?1:0,useNativeDriver:false}).start(function(){!!onStateChanged&&onStateChanged(isExpanded);});},[isExpanded]);var handleAnimation=function handleAnimation(){setExpanded(!isExpanded);};(0,_react.useImperativeHandle)(ref,function(){return{toggleAccordion:handleAnimation};});var arrowAngle=animationController.interpolate({inputRange:[0,1],outputRange:["0rad",Math.PI+"rad"]});var bodyContentHeight=animationController.interpolate({inputRange:[0,1],outputRange:[0,viewHeight]});return _react.default.createElement(_.Container,(0,_extends2.default)({},!noBorder&&{borderColor:"border.grey400",borderWidth:1,borderRadius:8},{width:"100%"},rest,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:105,columnNumber:5}}),_react.default.createElement(_reactNative.TouchableOpacity,{rippleOpacity:0,style:styles.accordionContainer,onPress:function onPress(){handleAnimation();},__self:_this,__source:{fileName:_jsxFileName,lineNumber:114,columnNumber:7}},!!header&&_react.default.createElement(_.Container,{flexGrow:1,__self:_this,__source:{fileName:_jsxFileName,lineNumber:121,columnNumber:22}},header()),_react.default.createElement(_.Container,{alignItems:"center",justifyContent:"center",flexDirection:"row",px:1,__self:_this,__source:{fileName:_jsxFileName,lineNumber:122,columnNumber:9}},Label&&_react.default.createElement(Label,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:128,columnNumber:21}}),_react.default.createElement(_reactNative.Animated.View,{style:{alignItems:"flex-end",transform:[{rotateZ:arrowAngle}]},__self:_this,__source:{fileName:_jsxFileName,lineNumber:129,columnNumber:11}},_react.default.createElement(_.Container,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:135,columnNumber:13}},_react.default.createElement(_reactNativeRemixIcon.default,{name:name!=null?name:"ri-arrow-down-s-line",color:color!=null?color:theme.colors.font.grey700,size:size!=null?size:24,__self:_this,__source:{fileName:_jsxFileName,lineNumber:136,columnNumber:15}}))))),_react.default.createElement(_reactNative.Animated.View,{style:{height:bodyContentHeight,overflow:"hidden"},__self:_this,__source:{fileName:_jsxFileName,lineNumber:145,columnNumber:7}},_react.default.createElement(_.Container,{width:"100%",position:"absolute",onLayout:getLayout,__self:_this,__source:{fileName:_jsxFileName,lineNumber:146,columnNumber:9}},children)));});exports.Accordion=Accordion;Accordion.propTypes={header:_propTypes.default.func,children:_propTypes.default.node,noBorder:_propTypes.default.bool,onStateChanged:_propTypes.default.func,iconProp:_propTypes.default.shape({name:_propTypes.default.string,Label:_propTypes.default.elementType,size:_propTypes.default.number,color:_propTypes.default.string})};var styles=_reactNative.StyleSheet.create({accordionContainer:{flexDirection:"row",padding:12,alignItems:"center"}});
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.Accordion=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 _react=_interopRequireWildcard(require("react"));var _reactNative=require("react-native");var _propTypes=_interopRequireDefault(require("prop-types"));var _reactNativeRemixIcon=_interopRequireDefault(require("react-native-remix-icon"));var _native=require("styled-components/native");var _=require("./");var _excluded=["header","noBorder","iconProp","onStateChanged","children"];var _this=this,_jsxFileName="/home/runner/work/neeto-ui-rn/neeto-ui-rn/src/components/Accordion.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 Accordion=_react.default.forwardRef(function(props,ref){var header=props.header,_props$noBorder=props.noBorder,noBorder=_props$noBorder===void 0?false:_props$noBorder,_props$iconProp=props.iconProp,iconProp=_props$iconProp===void 0?{}:_props$iconProp,onStateChanged=props.onStateChanged,children=props.children,rest=(0,_objectWithoutProperties2.default)(props,_excluded);var name=iconProp.name,Label=iconProp.Label,size=iconProp.size,color=iconProp.color;var theme=(0,_react.useContext)(_native.ThemeContext);var _useState=(0,_react.useState)(false),_useState2=(0,_slicedToArray2.default)(_useState,2),isExpanded=_useState2[0],setExpanded=_useState2[1];var _useState3=(0,_react.useState)(0),_useState4=(0,_slicedToArray2.default)(_useState3,2),viewHeight=_useState4[0],setViewHeight=_useState4[1];var animationController=(0,_react.useRef)(new _reactNative.Animated.Value(isExpanded?1:0)).current;var getLayout=function getLayout(event){var height=event.nativeEvent.layout.height;setViewHeight(height);};(0,_react.useEffect)(function(){_reactNative.Animated.timing(animationController,{duration:300,toValue:isExpanded?1:0,useNativeDriver:false}).start(function(){!!onStateChanged&&onStateChanged(isExpanded);});},[isExpanded]);var handleAnimation=function handleAnimation(){setExpanded(!isExpanded);};(0,_react.useImperativeHandle)(ref,function(){return{toggleAccordion:handleAnimation,openAccordion:function openAccordion(){return setExpanded(true);},closeAccordion:function closeAccordion(){return setExpanded(false);}};});var arrowAngle=animationController.interpolate({inputRange:[0,1],outputRange:["0rad",Math.PI+"rad"]});var bodyContentHeight=animationController.interpolate({inputRange:[0,1],outputRange:[0,viewHeight]});return _react.default.createElement(_.Container,(0,_extends2.default)({},!noBorder&&{borderColor:"border.grey400",borderWidth:1,borderRadius:8},{width:"100%"},rest,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:107,columnNumber:5}}),_react.default.createElement(_reactNative.TouchableOpacity,{rippleOpacity:0,style:styles.accordionContainer,onPress:function onPress(){handleAnimation();},__self:_this,__source:{fileName:_jsxFileName,lineNumber:116,columnNumber:7}},!!header&&_react.default.createElement(_.Container,{flexGrow:1,__self:_this,__source:{fileName:_jsxFileName,lineNumber:123,columnNumber:22}},header()),_react.default.createElement(_.Container,{alignItems:"center",justifyContent:"center",flexDirection:"row",px:1,__self:_this,__source:{fileName:_jsxFileName,lineNumber:124,columnNumber:9}},Label&&_react.default.createElement(Label,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:130,columnNumber:21}}),_react.default.createElement(_reactNative.Animated.View,{style:{alignItems:"flex-end",transform:[{rotateZ:arrowAngle}]},__self:_this,__source:{fileName:_jsxFileName,lineNumber:131,columnNumber:11}},_react.default.createElement(_.Container,{__self:_this,__source:{fileName:_jsxFileName,lineNumber:137,columnNumber:13}},_react.default.createElement(_reactNativeRemixIcon.default,{name:name!=null?name:"ri-arrow-down-s-line",color:color!=null?color:theme.colors.font.grey700,size:size!=null?size:24,__self:_this,__source:{fileName:_jsxFileName,lineNumber:138,columnNumber:15}}))))),_react.default.createElement(_reactNative.Animated.View,{style:{height:bodyContentHeight,overflow:"hidden"},__self:_this,__source:{fileName:_jsxFileName,lineNumber:147,columnNumber:7}},_react.default.createElement(_.Container,{width:"100%",position:"absolute",onLayout:getLayout,__self:_this,__source:{fileName:_jsxFileName,lineNumber:148,columnNumber:9}},children)));});exports.Accordion=Accordion;Accordion.propTypes={header:_propTypes.default.func,children:_propTypes.default.node,noBorder:_propTypes.default.bool,onStateChanged:_propTypes.default.func,iconProp:_propTypes.default.shape({name:_propTypes.default.string,Label:_propTypes.default.elementType,size:_propTypes.default.number,color:_propTypes.default.string})};var styles=_reactNative.StyleSheet.create({accordionContainer:{flexDirection:"row",padding:12,alignItems:"center"}});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neetoui-rn",
3
- "version": "0.0.155",
3
+ "version": "0.0.156",
4
4
  "main": "lib/index.js",
5
5
  "author": "BigBinary",
6
6
  "license": "MIT",
@@ -89,6 +89,8 @@ export const Accordion = React.forwardRef((props, ref) => {
89
89
 
90
90
  useImperativeHandle(ref, () => ({
91
91
  toggleAccordion: handleAnimation,
92
+ openAccordion: () => setExpanded(true),
93
+ closeAccordion: () => setExpanded(false),
92
94
  }));
93
95
 
94
96
  const arrowAngle = animationController.interpolate({