forked from pagopa/io-app
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathnative-base+2.13.13.patch
39 lines (39 loc) · 42.4 KB
/
native-base+2.13.13.patch
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
diff --git a/node_modules/native-base/.DS_Store b/node_modules/native-base/.DS_Store
new file mode 100644
index 0000000..e69de29
diff --git a/node_modules/native-base/dist/src/basic/Tabs/Button.android.js b/node_modules/native-base/dist/src/basic/Tabs/Button.android.js
index 1dcb578..91f64cb 100644
--- a/node_modules/native-base/dist/src/basic/Tabs/Button.android.js
+++ b/node_modules/native-base/dist/src/basic/Tabs/Button.android.js
@@ -1,2 +1,2 @@
-var _extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};var _jsxFileName='src/basic/Tabs/Button.android.js';var React=require('react');var ReactNative=require('react-native');var TouchableNativeFeedback=ReactNative.TouchableNativeFeedback,View=ReactNative.View;var Button=function Button(props){return React.createElement(TouchableNativeFeedback,_extends({delayPressIn:0},props,{__source:{fileName:_jsxFileName,lineNumber:7}}),props.children);};module.exports=Button;
+var _extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};var _jsxFileName='src/basic/Tabs/Button.android.js';var React=require('react');var ReactNative=require('react-native');var TouchableNativeFeedback=ReactNative.TouchableNativeFeedback,TouchableHighlight=ReactNative.TouchableHighlight,Platform=ReactNative.Platform;var Touchable=Platform.version>=21?TouchableNativeFeedback:TouchableHighlight;var Button=function Button(props){return React.createElement(Touchable,_extends({delayPressIn:0},props,{__source:{fileName:_jsxFileName,lineNumber:11}}),props.children);};module.exports=Button;
//# sourceMappingURL=Button.android.js.map
\ No newline at end of file
diff --git a/node_modules/native-base/dist/src/basic/Tabs/Button.android.js.map b/node_modules/native-base/dist/src/basic/Tabs/Button.android.js.map
index 9fc683a..5c27361 100644
--- a/node_modules/native-base/dist/src/basic/Tabs/Button.android.js.map
+++ b/node_modules/native-base/dist/src/basic/Tabs/Button.android.js.map
@@ -1 +1 @@
-{"version":3,"sources":["../../../../src/basic/Tabs/Button.android.js"],"names":["React","require","ReactNative","TouchableNativeFeedback","View","Button","props","children","module","exports"],"mappings":"oRAAA,GAAMA,OAAQC,QAAQ,OAAR,CAAd,CACA,GAAMC,aAAcD,QAAQ,cAAR,CAApB,C,GACQE,wB,CAAkCD,W,CAAlCC,uB,CAAyBC,I,CAASF,W,CAATE,I,CAEjC,GAAMC,QAAS,QAATA,OAAS,OAAS,CACtB,MACE,qBAAC,uBAAD,WACE,aAAc,CADhB,EAEMC,KAFN,kDAIGA,MAAMC,QAJT,CADF,CAQD,CATD,CAWAC,OAAOC,OAAP,CAAiBJ,MAAjB","file":"Button.android.js","sourcesContent":["const React = require('react');\nconst ReactNative = require('react-native');\nconst { TouchableNativeFeedback, View } = ReactNative;\n\nconst Button = props => {\n return (\n <TouchableNativeFeedback\n delayPressIn={0} // eslint-disable-line new-cap\n {...props}\n >\n {props.children}\n </TouchableNativeFeedback>\n );\n};\n\nmodule.exports = Button;\n// export default Button;\n"]}
\ No newline at end of file
+{"version":3,"sources":["../../../../src/basic/Tabs/Button.android.js"],"names":["React","require","ReactNative","TouchableNativeFeedback","TouchableHighlight","Platform","Touchable","version","Button","props","children","module","exports"],"mappings":"oRAAA,GAAMA,OAAQC,QAAQ,OAAR,CAAd,CACA,GAAMC,aAAcD,QAAQ,cAAR,CAApB,C,GACQE,wB,CAA0DD,W,CAA1DC,uB,CAAyBC,kB,CAAiCF,W,CAAjCE,kB,CAAoBC,Q,CAAaH,W,CAAbG,Q,CAGrD,GAAMC,WAAYD,SAASE,OAAT,EAAoB,EAApB,CAAyBJ,uBAAzB,CAAmDC,kBAArE,CAGA,GAAMI,QAAS,QAATA,OAAS,OAAS,CACtB,MACE,qBAAC,SAAD,WACE,aAAc,CADhB,EAEMC,KAFN,mDAIGA,MAAMC,QAJT,CADF,CAQD,CATD,CAWAC,OAAOC,OAAP,CAAiBJ,MAAjB","file":"Button.android.js","sourcesContent":["const React = require('react');\nconst ReactNative = require('react-native');\nconst { TouchableNativeFeedback, TouchableHighlight, Platform } = ReactNative;\n\n\nconst Touchable = Platform.version >= 21 ? TouchableNativeFeedback : TouchableHighlight;\n\n\nconst Button = props => {\n return (\n <Touchable\n delayPressIn={0} // eslint-disable-line new-cap\n {...props}\n >\n {props.children}\n </Touchable>\n );\n};\n\nmodule.exports = Button;\n// export default Button;\n"]}
\ No newline at end of file
diff --git a/node_modules/native-base/dist/src/basic/ToastContainer.js b/node_modules/native-base/dist/src/basic/ToastContainer.js
index a8998cc..28fc4de 100644
--- a/node_modules/native-base/dist/src/basic/ToastContainer.js
+++ b/node_modules/native-base/dist/src/basic/ToastContainer.js
@@ -1,2 +1,2 @@
-Object.defineProperty(exports,"__esModule",{value:true});exports.ToastContainer=undefined;var _extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};var _jsxFileName='src/basic/ToastContainer.js';var _createClass=function(){function defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}return function(Constructor,protoProps,staticProps){if(protoProps)defineProperties(Constructor.prototype,protoProps);if(staticProps)defineProperties(Constructor,staticProps);return Constructor;};}();var _react=require('react');var _react2=_interopRequireDefault(_react);var _reactNative=require('react-native');var _nativeBaseShoutemTheme=require('native-base-shoutem-theme');var _mapPropsToStyleNames=require('../utils/mapPropsToStyleNames');var _mapPropsToStyleNames2=_interopRequireDefault(_mapPropsToStyleNames);var _commonColor=require('../theme/variables/commonColor');var _Text=require('./Text');var _Button=require('./Button');var _Toast=require('./Toast');function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj};}function _objectWithoutProperties(obj,keys){var target={};for(var i in obj){if(keys.indexOf(i)>=0)continue;if(!Object.prototype.hasOwnProperty.call(obj,i))continue;target[i]=obj[i];}return target;}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self,call){if(!self){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call&&(typeof call==="object"||typeof call==="function")?call:self;}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function, not "+typeof superClass);}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,enumerable:false,writable:true,configurable:true}});if(superClass)Object.setPrototypeOf?Object.setPrototypeOf(subClass,superClass):subClass.__proto__=superClass;}var POSITION={ABSOLUTE:'absolute',BOTTOM:'bottom',TOP:'top'};var ToastContainer=function(_Component){_inherits(ToastContainer,_Component);_createClass(ToastContainer,null,[{key:'show',value:function show(_ref){var config=_objectWithoutProperties(_ref,[]);this.toastInstance._root.showToast({config:config});}},{key:'hide',value:function hide(){if(this.toastInstance._root.getModalState()){this.toastInstance._root.closeToast('functionCall');}}}]);function ToastContainer(props){_classCallCheck(this,ToastContainer);var _this=_possibleConstructorReturn(this,(ToastContainer.__proto__||Object.getPrototypeOf(ToastContainer)).call(this,props));_this.state={fadeAnim:new _reactNative.Animated.Value(0),pan:new _reactNative.Animated.ValueXY({x:0,y:0}),keyboardHeight:0,isKeyboardVisible:false,modalVisible:false};_this.keyboardDidHide=_this.keyboardDidHide.bind(_this);_this.keyboardDidShow=_this.keyboardDidShow.bind(_this);_this._panResponder=_reactNative.PanResponder.create({onMoveShouldSetPanResponderCapture:function onMoveShouldSetPanResponderCapture(){return true;},onPanResponderRelease:function onPanResponderRelease(evt,_ref2){var dx=_ref2.dx;if(dx!==0){_reactNative.Animated.timing(_this.state.pan,{toValue:{x:dx,y:0},duration:100}).start(function(){return _this.closeToast('swipe');});}}});return _this;}_createClass(ToastContainer,[{key:'componentDidMount',value:function componentDidMount(){_reactNative.Keyboard.addListener('keyboardDidShow',this.keyboardDidShow);_reactNative.Keyboard.addListener('keyboardDidHide',this.keyboardDidHide);}},{key:'getToastStyle',value:function getToastStyle(){return{position:POSITION.ABSOLUTE,opacity:this.state.fadeAnim,width:'100%',elevation:9,paddingHorizontal:_reactNative.Platform.OS===_commonColor.PLATFORM.IOS?20:0,top:this.state.position===POSITION.TOP?30:undefined,bottom:this.state.position===POSITION.BOTTOM?this.getTop():undefined};}},{key:'getTop',value:function getTop(){if(_reactNative.Platform.OS===_commonColor.PLATFORM.IOS){if(this.state.isKeyboardVisible){return this.state.keyboardHeight;}return 30;}return 0;}},{key:'getButtonText',value:function getButtonText(buttonText){if(buttonText){if(buttonText.trim().length===0){return undefined;}return buttonText;}return undefined;}},{key:'getModalState',value:function getModalState(){return this.state.modalVisible;}},{key:'keyboardDidHide',value:function keyboardDidHide(){this.setState({keyboardHeight:0,isKeyboardVisible:false});}},{key:'keyboardDidShow',value:function keyboardDidShow(e){this.setState({keyboardHeight:e.endCoordinates.height,isKeyboardVisible:true});}},{key:'showToast',value:function showToast(_ref3){var config=_ref3.config;this.setState({modalVisible:true,text:config.text,buttonText:this.getButtonText(config.buttonText),type:config.type,position:config.position?config.position:POSITION.BOTTOM,supportedOrientations:config.supportedOrientations,style:config.style,buttonTextStyle:config.buttonTextStyle,buttonStyle:config.buttonStyle,textStyle:config.textStyle,onClose:config.onClose});if(this.closeTimeout){clearTimeout(this.closeTimeout);}if(config.duration!==0){var duration=config.duration>0?config.duration:1500;this.closeTimeout=setTimeout(this.closeToast.bind(this,'timeout'),duration);}_reactNative.Animated.timing(this.state.fadeAnim,{toValue:1,duration:200,useNativeDriver:false}).start();}},{key:'closeModal',value:function closeModal(reason){this.setState({modalVisible:false});var onClose=this.state.onClose;if(onClose&&typeof onClose==='function'){onClose(reason);}}},{key:'closeToast',value:function closeToast(reason){var _this2=this;clearTimeout(this.closeTimeout);_reactNative.Animated.timing(this.state.fadeAnim,{toValue:0,duration:200,useNativeDriver:false}).start(function(){_this2.closeModal.bind(_this2,reason);_this2.state.pan.setValue({x:0,y:0});});}},{key:'render',value:function render(){var _this3=this;if(this.state.modalVisible){var _state$pan=this.state.pan,x=_state$pan.x,y=_state$pan.y;return _react2.default.createElement(_reactNative.Animated.View,_extends({},this._panResponder.panHandlers,{style:[this.getToastStyle(),{transform:[{translateX:x},{translateY:y}]}],__source:{fileName:_jsxFileName,lineNumber:175}}),_react2.default.createElement(_Toast.Toast,{style:[this.state.style],danger:this.state.type==='danger',success:this.state.type==='success',warning:this.state.type==='warning',__source:{fileName:_jsxFileName,lineNumber:182}},_react2.default.createElement(_Text.Text,{style:this.state.textStyle,__source:{fileName:_jsxFileName,lineNumber:188}},this.state.text),this.state.buttonText&&_react2.default.createElement(_Button.Button,{style:this.state.buttonStyle,onPress:function onPress(){return _this3.closeToast('user');},__source:{fileName:_jsxFileName,lineNumber:190}},_react2.default.createElement(_Text.Text,{style:this.state.buttonTextStyle,__source:{fileName:_jsxFileName,lineNumber:194}},this.state.buttonText))));}return null;}}]);return ToastContainer;}(_react.Component);ToastContainer.propTypes=_extends({},_reactNative.ViewPropTypes);var StyledToastContainer=(0,_nativeBaseShoutemTheme.connectStyle)('NativeBase.ToastContainer',{},_mapPropsToStyleNames2.default)(ToastContainer);exports.ToastContainer=StyledToastContainer;
+Object.defineProperty(exports,"__esModule",{value:true});exports.ToastContainer=undefined;var _extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};var _jsxFileName='src/basic/ToastContainer.js';var _createClass=function(){function defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}return function(Constructor,protoProps,staticProps){if(protoProps)defineProperties(Constructor.prototype,protoProps);if(staticProps)defineProperties(Constructor,staticProps);return Constructor;};}();var _react=require('react');var _react2=_interopRequireDefault(_react);var _reactNative=require('react-native');var _nativeBaseShoutemTheme=require('native-base-shoutem-theme');var _mapPropsToStyleNames=require('../utils/mapPropsToStyleNames');var _mapPropsToStyleNames2=_interopRequireDefault(_mapPropsToStyleNames);var _commonColor=require('../theme/variables/commonColor');var _Text=require('./Text');var _Button=require('./Button');var _Toast=require('./Toast');function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj};}function _objectWithoutProperties(obj,keys){var target={};for(var i in obj){if(keys.indexOf(i)>=0)continue;if(!Object.prototype.hasOwnProperty.call(obj,i))continue;target[i]=obj[i];}return target;}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self,call){if(!self){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return call&&(typeof call==="object"||typeof call==="function")?call:self;}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function, not "+typeof superClass);}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,enumerable:false,writable:true,configurable:true}});if(superClass)Object.setPrototypeOf?Object.setPrototypeOf(subClass,superClass):subClass.__proto__=superClass;}var POSITION={ABSOLUTE:'absolute',BOTTOM:'bottom',TOP:'top'};var ToastContainer=function(_Component){_inherits(ToastContainer,_Component);_createClass(ToastContainer,null,[{key:'show',value:function show(_ref){var config=_objectWithoutProperties(_ref,[]);this.toastInstance._root.showToast({config:config});}},{key:'hide',value:function hide(){if(this.toastInstance._root.getModalState()){this.toastInstance._root.closeToast('functionCall');}}}]);function ToastContainer(props){_classCallCheck(this,ToastContainer);var _this=_possibleConstructorReturn(this,(ToastContainer.__proto__||Object.getPrototypeOf(ToastContainer)).call(this,props));_this.closeModal=function(reason){_this.setState({modalVisible:false});var onClose=_this.state.onClose;if(onClose&&typeof onClose==='function'){onClose(reason);}};_this.state={fadeAnim:new _reactNative.Animated.Value(0),pan:new _reactNative.Animated.ValueXY({x:0,y:0}),keyboardHeight:0,isKeyboardVisible:false,modalVisible:false};_this.keyboardDidHide=_this.keyboardDidHide.bind(_this);_this.keyboardDidShow=_this.keyboardDidShow.bind(_this);_this._panResponder=_reactNative.PanResponder.create({onMoveShouldSetPanResponderCapture:function onMoveShouldSetPanResponderCapture(){return true;},onPanResponderRelease:function onPanResponderRelease(evt,_ref2){var dx=_ref2.dx;if(dx!==0){_reactNative.Animated.timing(_this.state.pan,{toValue:{x:dx,y:0},duration:100}).start(function(){return _this.closeToast('swipe');});}}});return _this;}_createClass(ToastContainer,[{key:'componentDidMount',value:function componentDidMount(){_reactNative.Keyboard.addListener('keyboardDidShow',this.keyboardDidShow);_reactNative.Keyboard.addListener('keyboardDidHide',this.keyboardDidHide);}},{key:'getToastStyle',value:function getToastStyle(){return{position:POSITION.ABSOLUTE,opacity:this.state.fadeAnim,width:'100%',elevation:9,paddingHorizontal:_reactNative.Platform.OS===_commonColor.PLATFORM.IOS?20:0,top:this.state.position===POSITION.TOP?30:undefined,bottom:this.state.position===POSITION.BOTTOM?this.getTop():undefined};}},{key:'getTop',value:function getTop(){if(_reactNative.Platform.OS===_commonColor.PLATFORM.IOS){if(this.state.isKeyboardVisible){return this.state.keyboardHeight;}return 30;}return 0;}},{key:'getButtonText',value:function getButtonText(buttonText){if(buttonText){if(buttonText.trim().length===0){return undefined;}return buttonText;}return undefined;}},{key:'getModalState',value:function getModalState(){return this.state.modalVisible;}},{key:'keyboardDidHide',value:function keyboardDidHide(){this.setState({keyboardHeight:0,isKeyboardVisible:false});}},{key:'keyboardDidShow',value:function keyboardDidShow(e){this.setState({keyboardHeight:e.endCoordinates.height,isKeyboardVisible:true});}},{key:'showToast',value:function showToast(_ref3){var config=_ref3.config;this.setState({modalVisible:true,text:config.text,buttonText:this.getButtonText(config.buttonText),type:config.type,position:config.position?config.position:POSITION.BOTTOM,supportedOrientations:config.supportedOrientations,style:config.style,buttonTextStyle:config.buttonTextStyle,buttonStyle:config.buttonStyle,textStyle:config.textStyle,onClose:config.onClose});if(this.closeTimeout){clearTimeout(this.closeTimeout);}if(config.duration!==0){var duration=config.duration>0?config.duration:1500;this.closeTimeout=setTimeout(this.closeToast.bind(this,'timeout'),duration);}_reactNative.Animated.timing(this.state.fadeAnim,{toValue:1,duration:200,useNativeDriver:false}).start();}},{key:'closeToast',value:function closeToast(reason){var _this2=this;clearTimeout(this.closeTimeout);_reactNative.Animated.timing(this.state.fadeAnim,{toValue:0,duration:200,useNativeDriver:false}).start(function(){_this2.closeModal(reason);_this2.state.pan.setValue({x:0,y:0});});}},{key:'render',value:function render(){var _this3=this;if(this.state.modalVisible){var _state$pan=this.state.pan,x=_state$pan.x,y=_state$pan.y;return _react2.default.createElement(_reactNative.Animated.View,_extends({},this._panResponder.panHandlers,{style:[this.getToastStyle(),{transform:[{translateX:x},{translateY:y}]}],__source:{fileName:_jsxFileName,lineNumber:175}}),_react2.default.createElement(_Toast.Toast,{style:[this.state.style],danger:this.state.type==='danger',success:this.state.type==='success',warning:this.state.type==='warning',__source:{fileName:_jsxFileName,lineNumber:182}},_react2.default.createElement(_Text.Text,{style:this.state.textStyle,__source:{fileName:_jsxFileName,lineNumber:188}},this.state.text),this.state.buttonText&&_react2.default.createElement(_Button.Button,{style:this.state.buttonStyle,onPress:function onPress(){return _this3.closeToast('user');},__source:{fileName:_jsxFileName,lineNumber:190}},_react2.default.createElement(_Text.Text,{style:this.state.buttonTextStyle,__source:{fileName:_jsxFileName,lineNumber:194}},this.state.buttonText))));}return null;}}]);return ToastContainer;}(_react.Component);ToastContainer.propTypes=_extends({},_reactNative.ViewPropTypes);var StyledToastContainer=(0,_nativeBaseShoutemTheme.connectStyle)('NativeBase.ToastContainer',{},_mapPropsToStyleNames2.default)(ToastContainer);exports.ToastContainer=StyledToastContainer;
//# sourceMappingURL=ToastContainer.js.map
\ No newline at end of file
diff --git a/node_modules/native-base/dist/src/basic/ToastContainer.js.map b/node_modules/native-base/dist/src/basic/ToastContainer.js.map
index 6620989..3974f66 100644
--- a/node_modules/native-base/dist/src/basic/ToastContainer.js.map
+++ b/node_modules/native-base/dist/src/basic/ToastContainer.js.map
@@ -1 +1 @@
-{"version":3,"sources":["../../../src/basic/ToastContainer.js"],"names":["POSITION","ABSOLUTE","BOTTOM","TOP","ToastContainer","config","toastInstance","_root","showToast","getModalState","closeToast","props","state","fadeAnim","Animated","Value","pan","ValueXY","x","y","keyboardHeight","isKeyboardVisible","modalVisible","keyboardDidHide","bind","keyboardDidShow","_panResponder","PanResponder","create","onMoveShouldSetPanResponderCapture","onPanResponderRelease","evt","dx","timing","toValue","duration","start","Keyboard","addListener","position","opacity","width","elevation","paddingHorizontal","Platform","OS","PLATFORM","IOS","top","undefined","bottom","getTop","buttonText","trim","length","setState","e","endCoordinates","height","text","getButtonText","type","supportedOrientations","style","buttonTextStyle","buttonStyle","textStyle","onClose","closeTimeout","clearTimeout","setTimeout","useNativeDriver","reason","closeModal","setValue","panHandlers","getToastStyle","transform","translateX","translateY","Component","propTypes","ViewPropTypes","StyledToastContainer","mapPropsToStyleNames"],"mappings":"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","file":"ToastContainer.js","sourcesContent":["/* eslint-disable class-methods-use-this */\nimport React, { Component } from 'react';\nimport {\n Keyboard,\n Platform,\n Animated,\n ViewPropTypes,\n PanResponder\n} from 'react-native';\nimport { connectStyle } from 'native-base-shoutem-theme';\n\nimport mapPropsToStyleNames from '../utils/mapPropsToStyleNames';\nimport { PLATFORM } from '../theme/variables/commonColor';\n\nimport { Text } from './Text';\nimport { Button } from './Button';\nimport { Toast } from './Toast';\n\nconst POSITION = {\n ABSOLUTE: 'absolute',\n BOTTOM: 'bottom',\n TOP: 'top'\n};\n\nclass ToastContainer extends Component {\n static show({ ...config }) {\n this.toastInstance._root.showToast({ config });\n }\n static hide() {\n if (this.toastInstance._root.getModalState()) {\n this.toastInstance._root.closeToast('functionCall');\n }\n }\n constructor(props) {\n super(props);\n\n this.state = {\n fadeAnim: new Animated.Value(0),\n pan: new Animated.ValueXY({ x: 0, y: 0 }),\n keyboardHeight: 0,\n isKeyboardVisible: false,\n modalVisible: false\n };\n\n this.keyboardDidHide = this.keyboardDidHide.bind(this);\n this.keyboardDidShow = this.keyboardDidShow.bind(this);\n this._panResponder = PanResponder.create({\n onMoveShouldSetPanResponderCapture: () => true,\n onPanResponderRelease: (evt, { dx }) => {\n if (dx !== 0) {\n Animated.timing(this.state.pan, {\n toValue: { x: dx, y: 0 },\n duration: 100\n }).start(() => this.closeToast('swipe'));\n }\n }\n });\n }\n\n componentDidMount() {\n Keyboard.addListener('keyboardDidShow', this.keyboardDidShow);\n Keyboard.addListener('keyboardDidHide', this.keyboardDidHide);\n }\n\n getToastStyle() {\n return {\n position: POSITION.ABSOLUTE,\n opacity: this.state.fadeAnim,\n width: '100%',\n elevation: 9,\n paddingHorizontal: Platform.OS === PLATFORM.IOS ? 20 : 0,\n top: this.state.position === POSITION.TOP ? 30 : undefined,\n bottom:\n this.state.position === POSITION.BOTTOM ? this.getTop() : undefined\n };\n }\n\n getTop() {\n if (Platform.OS === PLATFORM.IOS) {\n if (this.state.isKeyboardVisible) {\n return this.state.keyboardHeight;\n }\n return 30;\n }\n return 0;\n }\n\n getButtonText(buttonText) {\n if (buttonText) {\n if (buttonText.trim().length === 0) {\n return undefined;\n }\n return buttonText;\n }\n return undefined;\n }\n getModalState() {\n return this.state.modalVisible;\n }\n\n static toastInstance;\n\n keyboardDidHide() {\n this.setState({\n keyboardHeight: 0,\n isKeyboardVisible: false\n });\n }\n\n keyboardDidShow(e) {\n this.setState({\n keyboardHeight: e.endCoordinates.height,\n isKeyboardVisible: true\n });\n }\n\n showToast({ config }) {\n this.setState({\n modalVisible: true,\n text: config.text,\n buttonText: this.getButtonText(config.buttonText),\n type: config.type,\n position: config.position ? config.position : POSITION.BOTTOM,\n supportedOrientations: config.supportedOrientations,\n style: config.style,\n buttonTextStyle: config.buttonTextStyle,\n buttonStyle: config.buttonStyle,\n textStyle: config.textStyle,\n onClose: config.onClose\n });\n // If we have a toast already open, cut off its close timeout so that it won't affect *this* toast.\n if (this.closeTimeout) {\n clearTimeout(this.closeTimeout);\n }\n // Set the toast to close after the duration.\n if (config.duration !== 0) {\n const duration = config.duration > 0 ? config.duration : 1500;\n this.closeTimeout = setTimeout(\n this.closeToast.bind(this, 'timeout'),\n duration\n );\n }\n // Fade the toast in now.\n Animated.timing(this.state.fadeAnim, {\n toValue: 1,\n duration: 200,\n useNativeDriver: false\n }).start();\n }\n closeModal(reason) {\n this.setState({\n modalVisible: false\n });\n const { onClose } = this.state;\n if (onClose && typeof onClose === 'function') {\n onClose(reason);\n }\n }\n closeToast(reason) {\n clearTimeout(this.closeTimeout);\n Animated.timing(this.state.fadeAnim, {\n toValue: 0,\n duration: 200,\n useNativeDriver: false\n }).start(() => {\n this.closeModal.bind(this, reason);\n this.state.pan.setValue({ x: 0, y: 0 });\n });\n }\n\n render() {\n if (this.state.modalVisible) {\n const { x, y } = this.state.pan;\n return (\n <Animated.View\n {...this._panResponder.panHandlers}\n style={[\n this.getToastStyle(),\n { transform: [{ translateX: x }, { translateY: y }] }\n ]}\n >\n <Toast\n style={[this.state.style]}\n danger={this.state.type === 'danger'}\n success={this.state.type === 'success'}\n warning={this.state.type === 'warning'}\n >\n <Text style={this.state.textStyle}>{this.state.text}</Text>\n {this.state.buttonText && (\n <Button\n style={this.state.buttonStyle}\n onPress={() => this.closeToast('user')}\n >\n <Text style={this.state.buttonTextStyle}>\n {this.state.buttonText}\n </Text>\n </Button>\n )}\n </Toast>\n </Animated.View>\n );\n }\n return null;\n }\n}\n\nToastContainer.propTypes = {\n ...ViewPropTypes\n};\n\nconst StyledToastContainer = connectStyle(\n 'NativeBase.ToastContainer',\n {},\n mapPropsToStyleNames\n)(ToastContainer);\n\nexport { StyledToastContainer as ToastContainer };\n"]}
\ No newline at end of file
+{"version":3,"sources":["../../../src/basic/ToastContainer.js"],"names":["POSITION","ABSOLUTE","BOTTOM","TOP","ToastContainer","config","toastInstance","_root","showToast","getModalState","closeToast","props","closeModal","reason","setState","modalVisible","onClose","state","fadeAnim","Animated","Value","pan","ValueXY","x","y","keyboardHeight","isKeyboardVisible","keyboardDidHide","bind","keyboardDidShow","_panResponder","PanResponder","create","onMoveShouldSetPanResponderCapture","onPanResponderRelease","evt","dx","timing","toValue","duration","start","Keyboard","addListener","position","opacity","width","elevation","paddingHorizontal","Platform","OS","PLATFORM","IOS","top","undefined","bottom","getTop","buttonText","trim","length","e","endCoordinates","height","text","getButtonText","type","supportedOrientations","style","buttonTextStyle","buttonStyle","textStyle","closeTimeout","clearTimeout","setTimeout","useNativeDriver","setValue","panHandlers","getToastStyle","transform","translateX","translateY","Component","propTypes","ViewPropTypes","StyledToastContainer","mapPropsToStyleNames"],"mappings":"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","file":"ToastContainer.js","sourcesContent":["/* eslint-disable class-methods-use-this */\nimport React, { Component } from 'react';\nimport {\n Keyboard,\n Platform,\n Animated,\n ViewPropTypes,\n PanResponder\n} from 'react-native';\nimport { connectStyle } from 'native-base-shoutem-theme';\n\nimport mapPropsToStyleNames from '../utils/mapPropsToStyleNames';\nimport { PLATFORM } from '../theme/variables/commonColor';\n\nimport { Text } from './Text';\nimport { Button } from './Button';\nimport { Toast } from './Toast';\n\nconst POSITION = {\n ABSOLUTE: 'absolute',\n BOTTOM: 'bottom',\n TOP: 'top'\n};\n\nclass ToastContainer extends Component {\n static show({ ...config }) {\n this.toastInstance._root.showToast({ config });\n }\n static hide() {\n if (this.toastInstance._root.getModalState()) {\n this.toastInstance._root.closeToast('functionCall');\n }\n }\n constructor(props) {\n super(props);\n\n this.state = {\n fadeAnim: new Animated.Value(0),\n pan: new Animated.ValueXY({ x: 0, y: 0 }),\n keyboardHeight: 0,\n isKeyboardVisible: false,\n modalVisible: false\n };\n\n this.keyboardDidHide = this.keyboardDidHide.bind(this);\n this.keyboardDidShow = this.keyboardDidShow.bind(this);\n this._panResponder = PanResponder.create({\n onMoveShouldSetPanResponderCapture: () => true,\n onPanResponderRelease: (evt, { dx }) => {\n if (dx !== 0) {\n Animated.timing(this.state.pan, {\n toValue: { x: dx, y: 0 },\n duration: 100\n }).start(() => this.closeToast('swipe'));\n }\n }\n });\n }\n\n componentDidMount() {\n Keyboard.addListener('keyboardDidShow', this.keyboardDidShow);\n Keyboard.addListener('keyboardDidHide', this.keyboardDidHide);\n }\n\n getToastStyle() {\n return {\n position: POSITION.ABSOLUTE,\n opacity: this.state.fadeAnim,\n width: '100%',\n elevation: 9,\n paddingHorizontal: Platform.OS === PLATFORM.IOS ? 20 : 0,\n top: this.state.position === POSITION.TOP ? 30 : undefined,\n bottom:\n this.state.position === POSITION.BOTTOM ? this.getTop() : undefined\n };\n }\n\n getTop() {\n if (Platform.OS === PLATFORM.IOS) {\n if (this.state.isKeyboardVisible) {\n return this.state.keyboardHeight;\n }\n return 30;\n }\n return 0;\n }\n\n getButtonText(buttonText) {\n if (buttonText) {\n if (buttonText.trim().length === 0) {\n return undefined;\n }\n return buttonText;\n }\n return undefined;\n }\n getModalState() {\n return this.state.modalVisible;\n }\n\n static toastInstance;\n\n keyboardDidHide() {\n this.setState({\n keyboardHeight: 0,\n isKeyboardVisible: false\n });\n }\n\n keyboardDidShow(e) {\n this.setState({\n keyboardHeight: e.endCoordinates.height,\n isKeyboardVisible: true\n });\n }\n\n showToast({ config }) {\n this.setState({\n modalVisible: true,\n text: config.text,\n buttonText: this.getButtonText(config.buttonText),\n type: config.type,\n position: config.position ? config.position : POSITION.BOTTOM,\n supportedOrientations: config.supportedOrientations,\n style: config.style,\n buttonTextStyle: config.buttonTextStyle,\n buttonStyle: config.buttonStyle,\n textStyle: config.textStyle,\n onClose: config.onClose\n });\n // If we have a toast already open, cut off its close timeout so that it won't affect *this* toast.\n if (this.closeTimeout) {\n clearTimeout(this.closeTimeout);\n }\n // Set the toast to close after the duration.\n if (config.duration !== 0) {\n const duration = config.duration > 0 ? config.duration : 1500;\n this.closeTimeout = setTimeout(\n this.closeToast.bind(this, 'timeout'),\n duration\n );\n }\n // Fade the toast in now.\n Animated.timing(this.state.fadeAnim, {\n toValue: 1,\n duration: 200,\n useNativeDriver: false\n }).start();\n }\n closeModal = (reason) => {\n this.setState({\n modalVisible: false\n });\n const { onClose } = this.state;\n if (onClose && typeof onClose === 'function') {\n onClose(reason);\n }\n }\n closeToast(reason) {\n clearTimeout(this.closeTimeout);\n Animated.timing(this.state.fadeAnim, {\n toValue: 0,\n duration: 200,\n useNativeDriver: false\n }).start(() => {\n this.closeModal(reason);\n this.state.pan.setValue({ x: 0, y: 0 });\n });\n }\n\n render() {\n if (this.state.modalVisible) {\n const { x, y } = this.state.pan;\n return (\n <Animated.View\n {...this._panResponder.panHandlers}\n style={[\n this.getToastStyle(),\n { transform: [{ translateX: x }, { translateY: y }] }\n ]}\n >\n <Toast\n style={[this.state.style]}\n danger={this.state.type === 'danger'}\n success={this.state.type === 'success'}\n warning={this.state.type === 'warning'}\n >\n <Text style={this.state.textStyle}>{this.state.text}</Text>\n {this.state.buttonText && (\n <Button\n style={this.state.buttonStyle}\n onPress={() => this.closeToast('user')}\n >\n <Text style={this.state.buttonTextStyle}>\n {this.state.buttonText}\n </Text>\n </Button>\n )}\n </Toast>\n </Animated.View>\n );\n }\n return null;\n }\n}\n\nToastContainer.propTypes = {\n ...ViewPropTypes\n};\n\nconst StyledToastContainer = connectStyle(\n 'NativeBase.ToastContainer',\n {},\n mapPropsToStyleNames\n)(ToastContainer);\n\nexport { StyledToastContainer as ToastContainer };\n"]}
\ No newline at end of file