UNPKG

native-forms-test

Version:

Build your own forms, surveys and polls for your React Native apps.

1 lines 3.76 kB
Object.defineProperty(exports,"__esModule",{value:!0}),exports.findEmailAndName=findEmailAndName,exports.addExtraDataToForm=addExtraDataToForm,exports.predefineEmailAndName=predefineEmailAndName,exports.inIframe=inIframe,exports.getParentURL=getParentURL,exports.returnKeyboardType=exports.returnInputName=exports.FORM_NOT_FOUND=exports.FORM_ERROR=exports.FORM_ALREADY_COMPLETED=exports.SOURCE_REACT_NATIVE=exports.SOURCE_WEB=exports.SENDING_STATUSES_ARRAY=exports.ERROR_STATUS=exports.COMPLETE_STATUS=exports.TEMPLATE_STATUS=exports.PREVIEW_STATUS=exports.SENDING_STATUS=void 0;var _utils=require("./utils"),SENDING_STATUS="sending";exports.SENDING_STATUS=SENDING_STATUS;var PREVIEW_STATUS="preview";exports.PREVIEW_STATUS="preview";var TEMPLATE_STATUS="template";exports.TEMPLATE_STATUS="template";var COMPLETE_STATUS="complete";exports.COMPLETE_STATUS="complete";var ERROR_STATUS="error";exports.ERROR_STATUS="error";var SENDING_STATUSES_ARRAY=["preview","template","complete","error"];exports.SENDING_STATUSES_ARRAY=SENDING_STATUSES_ARRAY;var SOURCE_WEB="web";exports.SOURCE_WEB="web";var SOURCE_REACT_NATIVE="react-native";exports.SOURCE_REACT_NATIVE="react-native";var FORM_ALREADY_COMPLETED="Form was already completed";exports.FORM_ALREADY_COMPLETED="Form was already completed";var FORM_ERROR="Form does not exist or the link is broken";exports.FORM_ERROR="Form does not exist or the link is broken";var FORM_NOT_FOUND="Ooops, form with given ID doesn't exists";exports.FORM_NOT_FOUND="Ooops, form with given ID doesn't exists";var returnInputName=function(){var a=0<arguments.length&&arguments[0]!==void 0?arguments[0]:"",b=a.toLowerCase();return b.includes("name")?"name":b.includes("email")||b.includes("mail")?"email":b.includes("phone")?"tel":b.includes("address")?"address":b.includes("city")?"city":b.includes("state")?"state":b.includes("zip")?"zip":b.includes("country")?"country":void 0};exports.returnInputName=returnInputName;var returnKeyboardType=function(){var a=0<arguments.length&&arguments[0]!==void 0?arguments[0]:"",b=a.toLowerCase();return b.includes("email")||b.includes("mail")?"email-address":b.includes("phone")?"phone-pad":void 0};exports.returnKeyboardType=returnKeyboardType;function findEmailAndName(a){var b="",c="",d=a.pages||[];return d.forEach(function(a){var d=a.blocks||[];d.forEach(function(a){if("contact"===a.type){var d=a.value||[];d.forEach(function(a){var d=returnInputName(a.question);"email"===d&&(b=a.value),"name"===d&&(c=a.value)})}})}),{email:b,name:c}}function addExtraDataToForm(a,b){var c=2<arguments.length&&arguments[2]!==void 0?arguments[2]:{};if(a){var d=b||c.extraData;if("string"==typeof d)try{d=JSON.parse(d)}catch(a){console.error("Invalid query parameter for extraData",a)}return d?"object"==typeof d?void(a.extraData=a.extraData||{},Object.keys(d).forEach(function(b){return"string"==typeof d[b]?void(a.extraData[b]=d[b]):void console.error(b+" has invalid data format. Should be string.")})):void console.error("extraData prop has invalid format. Should be an object."):void 0}}function predefineEmailAndName(a,b,c){if(a){var d=(0,_utils.queryStringToJSON)();a.customer=a.customer||{};var e=b||d.email,f=c||d.name;if(e||f){var g=a.pages||[];a.customer.email=e,a.customer.name=f,g.forEach(function(a){var b=a.blocks||[];b.forEach(function(a){if("contact"===a.type){var b=a.value||[];b.forEach(function(a){var b=returnInputName(a.question);"email"===b&&(a.value=e||""),"name"===b&&(a.value=f||"")})}})})}}}function inIframe(){if(!window||!window.location)return!1;if(!window)return!1;try{return window.self!==window.top}catch(a){return!0}}function getParentURL(){return window&&window.location?window.location===window.parent.location?window.document.location.href:window.document.referrer:""}