UNPKG

mopinion-react-native-sdk

Version:

Collect in-app feedback with Mopinion for React Native. Built fully in React Native for optimal integration with your React Native app.

1 lines 6.45 kB
var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.default=ContactBlock;var _react=_interopRequireDefault(require("react"));var _reactNative=require("react-native");var _TextBlock=_interopRequireDefault(require("./TextBlock"));var _SelectBlock=_interopRequireDefault(require("./SelectBlock"));var _ErrorMessage=_interopRequireDefault(require("./ErrorMessage"));var _styles=require("../styles");var _jsxRuntime=require("react/jsx-runtime");var styles=_reactNative.StyleSheet.create({error:{left:0,transform:[{translateY:12}]},row:{marginBottom:(0,_styles.spacing)(2)}});function ContactErrorMessage(props){return(0,_jsxRuntime.jsx)(_ErrorMessage.default,Object.assign({style:styles.error},props));}function ContactBlock(props){var _properties$elements,_name$subelements,_name$subelements$fir,_blockState$name$sube,_name$subelements3,_name$subelements3$fi,_name$subelements4,_name$subelements4$fi,_name$subelements5,_name$subelements5$la,_blockState$name$sube2,_name$subelements7,_name$subelements7$la,_name$subelements8,_name$subelements8$la;var children=props.children,block=props.block,blockState=props.blockState,_props$errorMessages=props.errorMessages,errorMessages=_props$errorMessages===void 0?{}:_props$errorMessages,setNestedValue=props.setNestedValue,showErrors=props.showErrors;var properties=block.properties;var _ref=(_properties$elements=properties.elements)!=null?_properties$elements:{},_ref$title=_ref.title,title=_ref$title===void 0?{}:_ref$title,_ref$name=_ref.name,name=_ref$name===void 0?{}:_ref$name,_ref$email=_ref.email,email=_ref$email===void 0?{}:_ref$email,_ref$phone=_ref.phone,phone=_ref$phone===void 0?{}:_ref$phone,_ref$phone2=_ref.phone2,phone2=_ref$phone2===void 0?{}:_ref$phone2;return(0,_jsxRuntime.jsxs)(_reactNative.View,{children:[title.show&&(0,_jsxRuntime.jsxs)(_reactNative.View,{style:styles.row,children:[(0,_jsxRuntime.jsx)(_SelectBlock.default,{block:Object.assign({},title,{properties:{elements:title.options}}),blockState:blockState[title.data_field],setValue:function setValue(value){return setNestedValue(value,title.data_field);},showErrors:showErrors}),(0,_jsxRuntime.jsx)(ContactErrorMessage,{show:showErrors&&blockState[title.data_field].showError,children:errorMessages[title.data_field]})]}),name.show&&name.combine&&(0,_jsxRuntime.jsxs)(_reactNative.View,{style:styles.row,children:[(0,_jsxRuntime.jsx)(TextInput,{block:name,state:blockState[name.data_field],setValue:function setValue(value){return setNestedValue(name.data_field,value);},showErrors:showErrors}),(0,_jsxRuntime.jsx)(ContactErrorMessage,{show:showErrors&&blockState[name.data_field].showError,children:errorMessages[name.data_field]})]}),name.show&&!name.combine&&(0,_jsxRuntime.jsxs)(_jsxRuntime.Fragment,{children:[(0,_jsxRuntime.jsxs)(_reactNative.View,{style:styles.row,children:[(0,_jsxRuntime.jsx)(_TextBlock.default,{block:name.subelements.firstname,blockState:blockState[name==null?void 0:(_name$subelements=name.subelements)==null?void 0:(_name$subelements$fir=_name$subelements.firstname)==null?void 0:_name$subelements$fir.data_field],setValue:function setValue(value){var _name$subelements2,_name$subelements2$fi;return setNestedValue(value,name==null?void 0:(_name$subelements2=name.subelements)==null?void 0:(_name$subelements2$fi=_name$subelements2.firstname)==null?void 0:_name$subelements2$fi.data_field);},showErrors:showErrors}),(0,_jsxRuntime.jsx)(ContactErrorMessage,{show:showErrors&&((_blockState$name$sube=blockState[name==null?void 0:(_name$subelements3=name.subelements)==null?void 0:(_name$subelements3$fi=_name$subelements3.firstname)==null?void 0:_name$subelements3$fi.data_field])==null?void 0:_blockState$name$sube.showError),children:errorMessages[name==null?void 0:(_name$subelements4=name.subelements)==null?void 0:(_name$subelements4$fi=_name$subelements4.firstname)==null?void 0:_name$subelements4$fi.data_field]})]}),(0,_jsxRuntime.jsxs)(_reactNative.View,{style:styles.row,children:[(0,_jsxRuntime.jsx)(_TextBlock.default,{block:name.subelements.lastname,blockState:blockState[name==null?void 0:(_name$subelements5=name.subelements)==null?void 0:(_name$subelements5$la=_name$subelements5.lastname)==null?void 0:_name$subelements5$la.data_field],setValue:function setValue(value){var _name$subelements6,_name$subelements6$la;return setNestedValue(value,name==null?void 0:(_name$subelements6=name.subelements)==null?void 0:(_name$subelements6$la=_name$subelements6.lastname)==null?void 0:_name$subelements6$la.data_field);},showErrors:showErrors}),(0,_jsxRuntime.jsx)(ContactErrorMessage,{show:showErrors&&((_blockState$name$sube2=blockState[name==null?void 0:(_name$subelements7=name.subelements)==null?void 0:(_name$subelements7$la=_name$subelements7.lastname)==null?void 0:_name$subelements7$la.data_field])==null?void 0:_blockState$name$sube2.showError),children:errorMessages[name==null?void 0:(_name$subelements8=name.subelements)==null?void 0:(_name$subelements8$la=_name$subelements8.lastname)==null?void 0:_name$subelements8$la.data_field]})]})]}),email.show&&(0,_jsxRuntime.jsxs)(_reactNative.View,{style:styles.row,children:[(0,_jsxRuntime.jsx)(_TextBlock.default,{block:email,blockState:blockState[email.data_field],setValue:function setValue(value){return setNestedValue(value,email.data_field);},showErrors:showErrors,inputMode:"email"}),(0,_jsxRuntime.jsx)(ContactErrorMessage,{show:showErrors&&blockState[email.data_field].showError,children:errorMessages[email.data_field]})]}),phone.show&&(0,_jsxRuntime.jsxs)(_reactNative.View,{style:styles.row,children:[(0,_jsxRuntime.jsx)(_TextBlock.default,{block:phone,blockState:blockState[phone.data_field],setValue:function setValue(value){return setNestedValue(value,phone.data_field);},type:"tel",showErrors:showErrors,inputMode:"tel"}),(0,_jsxRuntime.jsx)(ContactErrorMessage,{show:showErrors&&blockState[phone.data_field].showError,children:errorMessages[phone.data_field]})]}),phone2.show&&(0,_jsxRuntime.jsxs)(_reactNative.View,{style:styles.row,children:[(0,_jsxRuntime.jsx)(_TextBlock.default,{block:phone2,blockState:blockState[phone2.data_field],setValue:function setValue(value){return setNestedValue(phone2.data_field,value);},type:"tel",showErrors:showErrors,inputMode:"tel"}),(0,_jsxRuntime.jsx)(ContactErrorMessage,{show:showErrors&&blockState[phone2.data_field].showError,children:errorMessages[phone2.data_field]})]})]});}