@zengenti/contensis-react-base 3.0.2-beta.12 → 3.0.2-beta.13

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/esm/forms.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"forms.js","sources":["../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/redux/types.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/redux/reducer.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/redux/selectors.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/utils/api-utils.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/utils/domains.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/utils/validate-utils.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/utils/transform-utils.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/redux/sagas.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/redux/actions.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/theme/themeContext.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/theme/form/colors.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/theme/form/index.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/features/form/form.styled.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/fields/label/label.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/charaterlimit/characterLimit.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/fields/textfield/textfield.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/fields/textarea/textarea.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/fields/hiddenfield/hiddenField.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/fields/dropdown/dropdown.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/fields/checkbox/checkbox.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/fields/radiobutton/radioButton.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/utils/format-date.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/fields/singledate/SingleDate.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/fields/daterange/dateRange.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/fields/entrypicker/entryPicker.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/features/composer/formComposer.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/loader/loader.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/button/button.styled.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/button/button.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/callout/callout.styled.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/callout/callout.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/features/form/form.js"],"sourcesContent":["const ACTION_PREFIX = '@FORM2/';\nexport const SET_FORM_DATA = `${ACTION_PREFIX}SET_FORM_DATA`;\nexport const SET_FORM_ID = `${ACTION_PREFIX}SET_FORM_ID`;\nexport const SET_CURRENT_PAGE = `${ACTION_PREFIX}SET_CURRENT_PAGE`;\nexport const PAGE_BACK = `${ACTION_PREFIX}PAGE_BACK`;\nexport const PAGE_FORWARD = `${ACTION_PREFIX}PAGE_FORWARD`;\nexport const SET_FIELD_VALUE = `${ACTION_PREFIX}SET_FIELD_VALUE`;\nexport const SET_DEFAULT_FIELD_VALUE = `${ACTION_PREFIX}SET_DEFAULT_FIELD_VALUE`;\nexport const SUBMIT_FORM_FOR_VALIDATION = `${ACTION_PREFIX}SUBMIT_FORM_FOR_VALIDATION`;\nexport const SUBMIT_FORM = `${ACTION_PREFIX}SUBMIT_FORM`;\nexport const SUBMIT_FORM_SUCCESS = `${ACTION_PREFIX}SUBMIT_FORM_SUCCESS`;\nexport const SUBMIT_FORM_ERROR = `${ACTION_PREFIX}SUBMIT_FORM_ERROR`;\nexport const SET_SUBMITTING_FORM = `${ACTION_PREFIX}SET_SUBMITTING_FORM`;\nexport const SET_ERROR = `${ACTION_PREFIX}SET_ERROR`;\nexport const VALIDATE_FIELD = `${ACTION_PREFIX}VALIDATE_FIELD`;\nexport const VALIDATE_PAGE = `${ACTION_PREFIX}VALIDATE_PAGE`;\nexport const SET_FIELD_ERROR = `${ACTION_PREFIX}SET_FIELD_ERROR`;\nexport const SET_DATE_RANGE_VALUES = `${ACTION_PREFIX}SET_DATE_RANGE_VALUES`;\nexport const SET_FORM_ENTRIES = `${ACTION_PREFIX}SET_FORM_ENTRIES`;\nexport const SET_SUCCESS_MESSAGE = `${ACTION_PREFIX}SET_SUCCESS_MESSAGE`;\nexport const SET_CHECKBOX_VALUE = `${ACTION_PREFIX}SET_CHECKBOX_VALUE`;\nexport const DO_VALIDATE_FORM = `${ACTION_PREFIX}DO_VALIDATE_FORM`;\n","import { produce } from 'immer';\n\nimport {\n SET_FORM_ID,\n SET_FORM_DATA,\n SET_FIELD_VALUE,\n SET_FIELD_ERROR,\n SET_SUBMITTING_FORM,\n SET_CURRENT_PAGE,\n SET_ERROR,\n SET_DATE_RANGE_VALUES,\n SET_FORM_ENTRIES,\n SUBMIT_FORM_SUCCESS,\n SUBMIT_FORM_ERROR,\n SET_SUCCESS_MESSAGE,\n SET_CHECKBOX_VALUE,\n SET_DEFAULT_FIELD_VALUE,\n SUBMIT_FORM_FOR_VALIDATION,\n} from './types';\n\nconst initialSettings = {\n recaptcha: {\n siteKey: null,\n },\n};\n\nconst initialStatus = {\n isLoading: true,\n isSubmitting: false,\n hasSuccess: false,\n hasError: false,\n messages: {\n success: null,\n },\n validation: {\n sent: false,\n }\n};\n\nconst initialPagingInfo = {\n pageIndex: 0,\n pageCount: 0,\n currentPageId: null,\n};\n\nconst initialFormData = {\n formId: null,\n data: {},\n fields: [],\n entries: [],\n fieldErrors: [],\n groups: [],\n defaultLanguage: null,\n pagingInfo: initialPagingInfo,\n status: initialStatus,\n settings: {},\n};\n\nlet initialState = {\n settings: initialSettings,\n};\n\nexport default produce((state, action) => {\n switch (action.type) {\n case SET_FORM_ID: {\n const { formId } = action || {};\n state[formId] = initialFormData;\n return;\n }\n case SET_FORM_DATA: {\n const { fields, formId, groups, defaultLanguage, settings } = action || {};\n state[formId].fields = fields;\n state[formId].formId = formId;\n state[formId].groups = groups;\n state[formId].defaultLanguage = defaultLanguage;\n state[formId].status.isSubmitting = false;\n state[formId].status.isLoading = false;\n state[formId].status.hasSuccess = false;\n state[formId].status.hasError = false;\n state[formId].settings = settings;\n return;\n }\n case SET_CURRENT_PAGE: {\n const { formId, pageId, pageIndex, pageCount } = action || {};\n state[formId].pagingInfo.currentPageId = pageId;\n state[formId].pagingInfo.pageIndex = pageIndex;\n state[formId].pagingInfo.pageCount = pageCount;\n return;\n }\n case SET_FIELD_VALUE: {\n const { formId, id, value } = action || {};\n state[formId].data[id] = value;\n return;\n }\n case SET_DEFAULT_FIELD_VALUE: {\n const { formId, value } = action || {};\n state[formId].data = {\n ...state[formId].data,\n ...value\n };\n return;\n }\n case SET_CHECKBOX_VALUE: {\n const { formId, id, value, isChecked } = action || {};\n let values = state[formId].data[id] || [];\n if (isChecked) state[formId].data[id] = { ...values, value };\n else state[formId].data[id] = values.filter(v => v !== value);\n return;\n }\n case SET_DATE_RANGE_VALUES: {\n const { formId, id, value, dateType } = action || {};\n state[formId].data[id][dateType] = value;\n return;\n }\n case SET_FIELD_ERROR: {\n const { formId, value } = action || {};\n state[formId].fieldErrors = value;\n return;\n }\n case SET_SUBMITTING_FORM: {\n const { formId, isSubmitting } = action || {};\n state[formId].status.isSubmitting = isSubmitting;\n return;\n }\n case SUBMIT_FORM_SUCCESS: {\n const { formId } = action || {};\n state[formId].status.hasError = false;\n state[formId].status.isSubmitting = false;\n state[formId].status.hasSuccess = true;\n state[formId].status.validation.sent = false;\n return;\n }\n case SUBMIT_FORM_FOR_VALIDATION: {\n const { formId } = action || {};\n state[formId].status.validation.sent = true;\n state[formId].status.isSubmitting = false;\n state[formId].status.hasSuccess = false;\n state[formId].status.hasError = false;\n return;\n }\n case SET_SUCCESS_MESSAGE: {\n const { formId, message } = action || {};\n state[formId].status.message.success = message;\n return;\n }\n case SUBMIT_FORM_ERROR: {\n const { formId } = action || {};\n state[formId].status.hasError = true;\n state[formId].status.isSubmitting = false;\n state[formId].status.validation.sent = false;\n return;\n }\n case SET_FORM_ENTRIES: {\n const { formId, entries } = action || {};\n const entryObject = {};\n entries.map(entry => {\n if (!entry) return null;\n entryObject[entry.id] = entry.entries;\n return entryObject;\n });\n state[formId].entries = entryObject;\n return;\n }\n case SET_ERROR: {\n const { formId } = action || {};\n state[formId].status.hasError = true;\n state[formId].status.isSubmitting = false;\n return;\n }\n default:\n return state;\n }\n}, initialState);\n","import { createSelector } from 'reselect';\n\nexport const selectForms = state => state.forms;\n\nexport const makeSelectPagedFields = formId =>\n createSelector(selectForms, forms => {\n if (forms?.[formId]) {\n const pagingInfo = forms?.[formId]?.pagingInfo;\n const fields = forms?.[formId]?.fields;\n if (fields?.length > 0 && pagingInfo.pageCount > 1) return fields.filter(f => f.groupId == pagingInfo.currentPageId);\n else return fields;\n }\n });\n\nexport const makeSelectFormStatus = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.status);\n \nexport const makeSelectPagingInfo = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.pagingInfo);\n\nexport const makeSelectFormSettings = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.settings)\n \nexport const makeSelectFormFieldErrors = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.fieldErrors);\n\nexport const makeSelectFormEntries = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.entries);\n\nexport const makeSelectFormPostData = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.data);\n\nexport const makeSelectIsLoading = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.status.isLoading);\n\n export const makeSelectIsSubmitting = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.status.isSubmitting);\n\nexport const makeSelectHasSuccess = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.status.hasSuccess);\n\nexport const makeSelectHasError = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.status.hasError);\n\nexport const makeSelectFormFields = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.fields);\n\nexport const makeSelectDefaultLang = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.defaultLanguage);\n\nexport const makeSelectFormSuccessMessage = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.status.messages.success);\n\nexport const makeSelectFormValidationSent = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.status.validation.sent);\n\nexport const makeSelectFormGroup = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.groups);\n\n\nexport const selectors = {\n selectForms,\n makeSelectPagedFields,\n makeSelectFormStatus,\n makeSelectPagingInfo,\n makeSelectFormSettings,\n makeSelectFormFieldErrors,\n makeSelectFormEntries,\n makeSelectFormPostData,\n makeSelectIsLoading,\n makeSelectIsSubmitting,\n makeSelectHasSuccess,\n makeSelectFormFields,\n makeSelectDefaultLang,\n makeSelectFormSuccessMessage,\n makeSelectFormValidationSent,\n makeSelectFormGroup,\n makeSelectHasError\n}\n","const URI = '/forms';\n\nexport const getFormSchema = async formId => {\n var options = {\n method: 'GET',\n headers: {\n 'Content-Type': 'application/json',\n },\n };\n const getUrl = `${URI}/${formId}`;\n const schema = await request(getUrl, options);\n return schema;\n};\nexport const getEntries = async (formObj, id) => {\n var options = {\n method: 'POST',\n headers: {\n Accept: '*/*',\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(formObj),\n };\n const entriesUrl = `${URI}/entries`;\n const entries = await request(entriesUrl, options);\n\n return {\n entries,\n id,\n };\n};\nexport const postForm = async formObj => {\n var options = {\n method: 'POST',\n headers: {\n Accept: '*/*',\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(formObj),\n };\n const submitted = await request(URI, options);\n return submitted;\n};\nconst request = async (url, options) => {\n return (\n fetch(url, options)\n .then(response => response.json())\n .then(result => {\n return result;\n })\n // eslint-disable-next-line no-console\n .catch(error => console.log('error', error))\n );\n};\n","export const domains = [\n '1033edge.com',\n '11mail.com',\n '123.com',\n '123box.net',\n '123india.com',\n '123mail.cl',\n '123qwe.co.uk',\n '126.com',\n '150ml.com',\n '15meg4free.com',\n '163.com',\n '1coolplace.com',\n '1freeemail.com',\n '1funplace.com',\n '1internetdrive.com',\n '1mail.net',\n '1me.net',\n '1mum.com',\n '1musicrow.com',\n '1netdrive.com',\n '1nsyncfan.com',\n '1under.com',\n '1webave.com',\n '1webhighway.com',\n '212.com',\n '24horas.com',\n '2911.net',\n '2bmail.co.uk',\n '2d2i.com',\n '2die4.com',\n '3000.it',\n '321media.com',\n '37.com',\n '3ammagazine.com',\n '3dmail.com',\n '3email.com',\n '3xl.net',\n '444.net',\n '4email.com',\n '4email.net',\n '4mg.com',\n '4newyork.com',\n '4x4man.com',\n '5iron.com',\n '5star.com',\n '88.am',\n '8848.net',\n '888.nu',\n '97rock.com',\n 'aaamail.zzn.com',\n 'aamail.net',\n 'aaronkwok.net',\n 'abbeyroadlondon.co.uk',\n 'abcflash.net',\n 'abdulnour.com',\n 'aberystwyth.com',\n 'abolition-now.com',\n 'about.com',\n 'academycougars.com',\n 'acceso.or.cr',\n 'access4less.net',\n 'accessgcc.com',\n 'ace-of-base.com',\n 'acmecity.com',\n 'acmemail.net',\n 'acninc.net',\n 'adelphia.net',\n 'adexec.com',\n 'adfarrow.com',\n 'adios.net',\n 'ados.fr',\n 'advalvas.be',\n 'aeiou.pt',\n 'aemail4u.com',\n 'aeneasmail.com',\n 'afreeinternet.com',\n 'africamail.com',\n 'agoodmail.com',\n 'ahaa.dk',\n 'aichi.com',\n 'aim.com',\n 'airforce.net',\n 'airforceemail.com',\n 'airmail.net',\n 'airpost.net',\n 'ajacied.com',\n 'ak47.hu',\n 'aknet.kg',\n 'albawaba.com',\n 'alex4all.com',\n 'alexandria.cc',\n 'algeria.com',\n 'alhilal.net',\n 'alibaba.com',\n 'alice.it',\n 'aliceadsl.fr',\n 'alive.cz',\n 'aliyun.com',\n 'allmail.net',\n 'alloymail.com',\n 'allracing.com',\n 'allsaintsfan.com',\n 'alltel.net',\n 'alskens.dk',\n 'altavista.com',\n 'altavista.net',\n 'altavista.se',\n 'alternativagratis.com',\n 'alumnidirector.com',\n 'alvilag.hu',\n 'amele.com',\n 'america.hm',\n 'ameritech.net',\n 'amnetsal.com',\n 'amrer.net',\n 'amuro.net',\n 'amuromail.com',\n 'ananzi.co.za',\n 'ancestry.com',\n 'andylau.net',\n 'anfmail.com',\n 'angelfan.com',\n 'angelfire.com',\n 'animal.net',\n 'animalhouse.com',\n 'animalwoman.net',\n 'anjungcafe.com',\n 'anote.com',\n 'another.com',\n 'anotherwin95.com',\n 'anti-social.com',\n 'antisocial.com',\n 'antongijsen.com',\n 'antwerpen.com',\n 'anymoment.com',\n 'anytimenow.com',\n 'aol.com',\n 'aol.it',\n 'apexmail.com',\n 'apmail.com',\n 'apollo.lv',\n 'approvers.net',\n 'arabia.com',\n 'arabtop.net',\n 'arcademaster.com',\n 'archaeologist.com',\n 'arcor.de',\n 'arcotronics.bg',\n 'argentina.com',\n 'aristotle.org',\n 'army.net',\n 'arnet.com.ar',\n 'artlover.com',\n 'artlover.com.au',\n 'as-if.com',\n 'asean-mail.com',\n 'asheville.com',\n 'asia-links.com',\n 'asia.com',\n 'asiafind.com',\n 'asianavenue.com',\n 'asiancityweb.com',\n 'asiansonly.net',\n 'asianwired.net',\n 'asiapoint.net',\n 'assala.com',\n 'assamesemail.com',\n 'astroboymail.com',\n 'astrolover.com',\n 'astrosfan.com',\n 'astrosfan.net',\n 'asurfer.com',\n 'athenachu.net',\n 'atina.cl',\n 'atl.lv',\n 'atlanticbb.net',\n 'atlaswebmail.com',\n 'atlink.com',\n 'ato.check.com',\n 'atozasia.com',\n 'att.net',\n 'att.net',\n 'attbi.com',\n 'attglobal.net',\n 'attglobal.net',\n 'attymail.com',\n 'au.ru',\n 'ausi.com',\n 'austin.rr.com',\n 'australia.edu',\n 'australiamail.com',\n 'austrosearch.net',\n 'autoescuelanerja.com',\n 'automotiveauthority.com',\n 'avh.hu',\n 'awsom.net',\n 'axoskate.com',\n 'ayna.com',\n 'azimiweb.com',\n 'bachelorboy.com',\n 'bachelorgal.com',\n 'backpackers.com',\n 'backstreet-boys.com',\n 'backstreetboysclub.com',\n 'bagherpour.com',\n 'bangkok.com',\n 'bangkok2000.com',\n 'bannertown.net',\n 'baptistmail.com',\n 'baptized.com',\n 'barcelona.com',\n 'baseballmail.com',\n 'basketballmail.com',\n 'batuta.net',\n 'baudoinconsulting.com',\n 'bboy.zzn.com',\n 'bcpl.net',\n 'bcvibes.com',\n 'beeebank.com',\n 'beenhad.com',\n 'beep.ru',\n 'beer.com',\n 'beethoven.com',\n 'belice.com',\n 'belizehome.com',\n 'bellatlantic.net',\n 'bellnet.ca',\n 'bellsouth.net',\n 'bellsouth.net',\n 'berkscounty.com',\n 'berlin.com',\n 'berlin.de',\n 'berlinexpo.de',\n 'bestmail.us',\n 'bestweb.net',\n 'bettergolf.net',\n 'bev.net',\n 'bharatmail.com',\n 'bigassweb.com',\n 'bigblue.net.au',\n 'bigboab.com',\n 'bigfoot.com',\n 'bigfoot.de',\n 'bigger.com',\n 'bigmailbox.com',\n 'bigpond.com',\n 'bigpond.com.au',\n 'bigpond.net.au',\n 'bigramp.com',\n 'bikemechanics.com',\n 'bikeracer.com',\n 'bikeracers.net',\n 'bikerider.com',\n 'billsfan.com',\n 'billsfan.net',\n 'bimamail.com',\n 'bimla.net',\n 'birdowner.net',\n 'bisons.com',\n 'bitmail.com',\n 'bitpage.net',\n 'bizhosting.com',\n 'bla-bla.com',\n 'blackburnmail.com',\n 'blackplanet.com',\n 'blacksburg.net',\n 'blazemail.com',\n 'blazenet.net',\n 'bluehyppo.com',\n 'bluemail.ch',\n 'bluemail.dk',\n 'bluesfan.com',\n 'bluewin.ch',\n 'blueyonder.co.uk',\n 'blushmail.com',\n 'bmlsports.net',\n 'boardermail.com',\n 'boatracers.com',\n 'bol.com.br',\n 'bolando.com',\n 'bollywoodz.com',\n 'bolt.com',\n 'boltonfans.com',\n 'bombdiggity.com',\n 'bonbon.net',\n 'boom.com',\n 'bootmail.com',\n 'bornnaked.com',\n 'bossofthemoss.com',\n 'bostonoffice.com',\n 'bounce.net',\n 'box.az',\n 'boxbg.com',\n 'boxemail.com',\n 'boxfrog.com',\n 'boyzoneclub.com',\n 'bradfordfans.com',\n 'brasilia.net',\n 'brazilmail.com.br',\n 'breathe.com',\n 'bresnan.net',\n 'brfree.com.br',\n 'bright.net',\n 'britneyclub.com',\n 'brittonsign.com',\n 'broadcast.net',\n 'bt.com',\n 'btinternet.com',\n 'btopenworld.co.uk',\n 'buffymail.com',\n 'bullsfan.com',\n 'bullsgame.com',\n 'bumerang.ro',\n 'bunko.com',\n 'buryfans.com',\n 'business-man.com',\n 'businessman.net',\n 'businessweekmail.com',\n 'busta-rhymes.com',\n 'busymail.com',\n 'buyersusa.com',\n 'bvimailbox.com',\n 'byteme.com',\n 'c2i.net',\n 'c3.hu',\n 'c4.com',\n 'cabacabana.com',\n 'cableone.net',\n 'caere.it',\n 'cairomail.com',\n 'cais.net',\n 'callnetuk.com',\n 'callsign.net',\n 'caltanet.it',\n 'camidge.com',\n 'canada-11.com',\n 'canada.com',\n 'canadianmail.com',\n 'canoemail.com',\n 'canwetalk.com',\n 'capu.net',\n 'caramail.com',\n 'care2.com',\n 'careerbuildermail.com',\n 'carioca.net',\n 'cartestraina.ro',\n 'casablancaresort.com',\n 'casino.com',\n 'catcha.com',\n 'catholic.org',\n 'catlover.com',\n 'catsrule.garfield.com',\n 'ccnmail.com',\n 'cd2.com',\n 'celineclub.com',\n 'celtic.com',\n 'centoper.it',\n 'centralpets.com',\n 'centrum.cz',\n 'centrum.sk',\n 'centurytel.net',\n 'cfl.rr.com',\n 'cgac.es',\n 'chaiyomail.com',\n 'chance2mail.com',\n 'chandrasekar.net',\n 'charm.net',\n 'charmedmail.com',\n 'charter.net',\n 'chat.ru',\n 'chattown.com',\n 'chauhanweb.com',\n 'check.com',\n 'check1check.com',\n 'cheerful.com',\n 'chek.com',\n 'chello.nl',\n 'chemist.com',\n 'chequemail.com',\n 'cheyenneweb.com',\n 'chez.com',\n 'chickmail.com',\n 'china.net.vg',\n 'chinalook.com',\n 'chirk.com',\n 'chocaholic.com.au',\n 'christianmail.net',\n 'churchusa.com',\n 'cia-agent.com',\n 'cia.hu',\n 'ciaoweb.it',\n 'cicciociccio.com',\n 'cincinow.net',\n 'citeweb.net',\n 'citlink.net',\n 'city-of-bath.org',\n 'city-of-birmingham.com',\n 'city-of-brighton.org',\n 'city-of-cambridge.com',\n 'city-of-coventry.com',\n 'city-of-edinburgh.com',\n 'city-of-lichfield.com',\n 'city-of-lincoln.com',\n 'city-of-liverpool.com',\n 'city-of-manchester.com',\n 'city-of-nottingham.com',\n 'city-of-oxford.com',\n 'city-of-swansea.com',\n 'city-of-westminster.com',\n 'city-of-westminster.net',\n 'city-of-york.net',\n 'city2city.com',\n 'cityofcardiff.net',\n 'cityoflondon.org',\n 'claramail.com',\n 'classicalfan.com',\n 'classicmail.co.za',\n 'clerk.com',\n 'cliffhanger.com',\n 'close2you.net',\n 'club-internet.fr',\n 'club4x4.net',\n 'clubalfa.com',\n 'clubbers.net',\n 'clubducati.com',\n 'clubhonda.net',\n 'clubvdo.net',\n 'cluemail.com',\n 'cmpmail.com',\n 'cnnsimail.com',\n 'codec.ro',\n 'coder.hu',\n 'coid.biz',\n 'coldmail.com',\n 'collectiblesuperstore.com',\n 'collegebeat.com',\n 'collegeclub.com',\n 'collegemail.com',\n 'colleges.com',\n 'columbus.rr.com',\n 'columbusrr.com',\n 'columnist.com',\n 'comcast.net',\n 'comic.com',\n 'communityconnect.com',\n 'comprendemail.com',\n 'compuserve.com',\n 'computer-freak.com',\n 'computermail.net',\n 'concentric.net',\n 'conexcol.com',\n 'conk.com',\n 'connect4free.net',\n 'connectbox.com',\n 'conok.com',\n 'consultant.com',\n 'cookiemonster.com',\n 'cool.br',\n 'coolgoose.ca',\n 'coolgoose.com',\n 'coolkiwi.com',\n 'coollist.com',\n 'coolmail.com',\n 'coolmail.net',\n 'coolsend.com',\n 'cooooool.com',\n 'cooperation.net',\n 'cooperationtogo.net',\n 'copacabana.com',\n 'cornells.com',\n 'cornerpub.com',\n 'corporatedirtbag.com',\n 'correo.terra.com.gt',\n 'cortinet.com',\n 'cotas.net',\n 'counsellor.com',\n 'countrylover.com',\n 'covad.net',\n 'cox.net',\n 'coxinet.net',\n 'coxmail.com',\n 'cpaonline.net',\n 'cracker.hu',\n 'crazedanddazed.com',\n 'crazysexycool.com',\n 'cristianemail.com',\n 'critterpost.com',\n 'croeso.com',\n 'crosshairs.com',\n 'crosslink.net',\n 'crosswinds.net',\n 'crwmail.com',\n 'cry4helponline.com',\n 'cs.com',\n 'csi.com',\n 'csinibaba.hu',\n 'cuemail.com',\n 'curio-city.com',\n 'cute-girl.com',\n 'cuteandcuddly.com',\n 'cutey.com',\n 'cww.de',\n 'cyber-africa.net',\n 'cyber4all.com',\n 'cyberbabies.com',\n 'cybercafemaui.com',\n 'cyberdude.com',\n 'cyberforeplay.net',\n 'cybergal.com',\n 'cybergrrl.com',\n 'cyberinbox.com',\n 'cyberleports.com',\n 'cybermail.net',\n 'cybernet.it',\n 'cyberspace-asia.com',\n 'cybertrains.org',\n 'cyclefanz.com',\n 'cynetcity.com',\n 'dabsol.net',\n 'dadacasa.com',\n 'daha.com',\n 'dailypioneer.com',\n 'dallas.theboys.com',\n 'dangerous-minds.com',\n 'dansegulvet.com',\n 'data54.com',\n 'daum.net',\n 'davegracey.com',\n 'dawnsonmail.com',\n 'dawsonmail.com',\n 'dazedandconfused.com',\n 'dbzmail.com',\n 'dca.net',\n 'dcemail.com',\n 'deadlymob.org',\n 'deal-maker.com',\n 'dearriba.com',\n 'death-star.com',\n 'dejanews.com',\n 'deliveryman.com',\n 'deltanet.com',\n 'deneg.net',\n 'depechemode.com',\n 'deseretmail.com',\n 'desertmail.com',\n 'desilota.com',\n 'deskmail.com',\n 'deskpilot.com',\n 'destin.com',\n 'detik.com',\n 'deutschland-net.com',\n 'devotedcouples.com',\n 'dfwatson.com',\n 'di-ve.com',\n 'digibel.be',\n 'diplomats.com',\n 'direcway.com',\n 'dirtracer.com',\n 'discofan.com',\n 'discovery.com',\n 'discoverymail.com',\n 'disinfo.net',\n 'dmailman.com',\n 'dmv.com',\n 'dnsmadeeasy.com',\n 'doctor.com',\n 'dog.com',\n 'doglover.com',\n 'dogmail.co.uk',\n 'dogsnob.net',\n 'doityourself.com',\n 'doneasy.com',\n 'donjuan.com',\n 'dontgotmail.com',\n 'dontmesswithtexas.com',\n 'doramail.com',\n 'dostmail.com',\n 'dotcom.fr',\n 'dott.it',\n 'dplanet.ch',\n 'dr.com',\n 'dragoncon.net',\n 'dragracer.com',\n 'dropzone.com',\n 'drotposta.hu',\n 'dslextreme.com',\n 'dubaimail.com',\n 'dublin.com',\n 'dublin.ie',\n 'dunlopdriver.com',\n 'dunloprider.com',\n 'duno.com',\n 'dwp.net',\n 'dygo.com',\n 'dynamitemail.com',\n 'e-apollo.lv',\n 'e-mail.dk',\n 'e-mail.ru',\n 'e-mailanywhere.com',\n 'e-mails.ru',\n 'e-tapaal.com',\n 'earthalliance.com',\n 'earthcam.net',\n 'earthdome.com',\n 'earthling.net',\n 'earthlink.net',\n 'earthonline.net',\n 'eastcoast.co.za',\n 'eastmail.com',\n 'easy.to',\n 'easypost.com',\n 'eatmydirt.com',\n 'ecardmail.com',\n 'ecbsolutions.net',\n 'echina.com',\n 'ecompare.com',\n 'edge.net',\n 'edmail.com',\n 'ednatx.com',\n 'edtnmail.com',\n 'educacao.te.pt',\n 'educastmail.com',\n 'ehmail.com',\n 'eircom.net',\n 'elsitio.com',\n 'elvis.com',\n 'email-london.co.uk',\n 'email.com',\n 'email.cz',\n 'email.ee',\n 'email.it',\n 'email.nu',\n 'email.ro',\n 'email.ru',\n 'email.si',\n 'email.women.com',\n 'email2me.net',\n 'emailacc.com',\n 'emailaccount.com',\n 'emailchoice.com',\n 'emailcorner.net',\n 'emailem.com',\n 'emailengine.net',\n 'emailforyou.net',\n 'emailgroups.net',\n 'emailpinoy.com',\n 'emailplanet.com',\n 'emails.ru',\n 'emailuser.net',\n 'emailx.net',\n 'ematic.com',\n 'embarqmail.com',\n 'emumail.com',\n 'end-war.com',\n 'enel.net',\n 'engineer.com',\n 'england.com',\n 'england.edu',\n 'enter.net',\n 'epatra.com',\n 'epix.net',\n 'epost.de',\n 'eposta.hu',\n 'eqqu.com',\n 'eramail.co.za',\n 'eresmas.com',\n 'eriga.lv',\n 'erols.com',\n 'estranet.it',\n 'ethos.st',\n 'etoast.com',\n 'etrademail.com',\n 'eudoramail.com',\n 'europe.com',\n 'euroseek.com',\n 'every1.net',\n 'everyday.com.kh',\n 'everyone.net',\n 'examnotes.net',\n 'excite.co.jp',\n 'excite.com',\n 'excite.it',\n 'execs.com',\n 'expressasia.com',\n 'extenda.net',\n 'extended.com',\n 'eyou.com',\n 'ezcybersearch.com',\n 'ezmail.egine.com',\n 'ezmail.ru',\n 'ezrs.com',\n 'ezy.net',\n 'f1fans.net',\n 'facebook.com',\n 'fan.com',\n 'fan.theboys.com',\n 'fansonlymail.com',\n 'fantasticmail.com',\n 'farang.net',\n 'faroweb.com',\n 'fastem.com',\n 'fastemail.us',\n 'fastemailer.com',\n 'fastermail.com',\n 'fastimap.com',\n 'fastmail.fm',\n 'fastmailbox.net',\n 'fastmessaging.com',\n 'fatcock.net',\n 'fathersrightsne.org',\n 'fbi-agent.com',\n 'fbi.hu',\n 'fcc.net',\n 'federalcontractors.com',\n 'felicity.com',\n 'felicitymail.com',\n 'femenino.com',\n 'fetchmail.co.uk',\n 'fetchmail.com',\n 'feyenoorder.com',\n 'ffanet.com',\n 'fiberia.com',\n 'fibertel.com.ar',\n 'filipinolinks.com',\n 'financemail.net',\n 'financier.com',\n 'findmail.com',\n 'finebody.com',\n 'finfin.com',\n 'fire-brigade.com',\n 'fishburne.org',\n 'flashcom.net',\n 'flashemail.com',\n 'flashmail.com',\n 'flashmail.net',\n 'flipcode.com',\n 'fmail.co.uk',\n 'fmailbox.com',\n 'fmgirl.com',\n 'fmguy.com',\n 'fnbmail.co.za',\n 'fnmail.com',\n 'folkfan.com',\n 'foodmail.com',\n 'football.theboys.com',\n 'footballmail.com',\n 'for-president.com',\n 'forfree.at',\n 'forpresident.com',\n 'forthnet.gr',\n 'fortuncity.com',\n 'fortunecity.com',\n 'forum.dk',\n 'foxmail.com',\n 'free-org.com',\n 'free.com.pe',\n 'free.fr',\n 'freeaccess.nl',\n 'freeaccount.com',\n 'freeandsingle.com',\n 'freedom.usa.com',\n 'freedomlover.com',\n 'freegates.be',\n 'freeghana.com',\n 'freeler.nl',\n 'freemail.c3.hu',\n 'freemail.com.au',\n 'freemail.com.pk',\n 'freemail.de',\n 'freemail.et',\n 'freemail.gr',\n 'freemail.hu',\n 'freemail.it',\n 'freemail.lt',\n 'freemail.nl',\n 'freemail.org.mk',\n 'freenet.de',\n 'freenet.kg',\n 'freeola.com',\n 'freeola.net',\n 'freeserve.co.uk',\n 'freestamp.com',\n 'freestart.hu',\n 'freesurf.fr',\n 'freesurf.nl',\n 'freeuk.com',\n 'freeuk.net',\n 'freeukisp.co.uk',\n 'freeweb.org',\n 'freewebemail.com',\n 'freeyellow.com',\n 'freezone.co.uk',\n 'fresnomail.com',\n 'friends-cafe.com',\n 'friendsfan.com',\n 'from-africa.com',\n 'from-america.com',\n 'from-argentina.com',\n 'from-asia.com',\n 'from-australia.com',\n 'from-belgium.com',\n 'from-brazil.com',\n 'from-canada.com',\n 'from-china.net',\n 'from-england.com',\n 'from-europe.com',\n 'from-france.net',\n 'from-germany.net',\n 'from-holland.com',\n 'from-israel.com',\n 'from-italy.net',\n 'from-japan.net',\n 'from-korea.com',\n 'from-mexico.com',\n 'from-outerspace.com',\n 'from-russia.com',\n 'from-spain.net',\n 'fromalabama.com',\n 'fromalaska.com',\n 'fromarizona.com',\n 'fromarkansas.com',\n 'fromcalifornia.com',\n 'fromcolorado.com',\n 'fromconnecticut.com',\n 'fromdelaware.com',\n 'fromflorida.net',\n 'fromgeorgia.com',\n 'fromhawaii.net',\n 'fromidaho.com',\n 'fromillinois.com',\n 'fromindiana.com',\n 'fromiowa.com',\n 'fromjupiter.com',\n 'fromkansas.com',\n 'fromkentucky.com',\n 'fromlouisiana.com',\n 'frommaine.net',\n 'frommaryland.com',\n 'frommassachusetts.com',\n 'frommiami.com',\n 'frommichigan.com',\n 'fromminnesota.com',\n 'frommississippi.com',\n 'frommissouri.com',\n 'frommontana.com',\n 'fromnebraska.com',\n 'fromnevada.com',\n 'fromnewhampshire.com',\n 'fromnewjersey.com',\n 'fromnewmexico.com',\n 'fromnewyork.net',\n 'fromnorthcarolina.com',\n 'fromnorthdakota.com',\n 'fromohio.com',\n 'fromoklahoma.com',\n 'fromoregon.net',\n 'frompennsylvania.com',\n 'fromrhodeisland.com',\n 'fromru.com',\n 'fromsouthcarolina.com',\n 'fromsouthdakota.com',\n 'fromtennessee.com',\n 'fromtexas.com',\n 'fromthestates.com',\n 'fromutah.com',\n 'fromvermont.com',\n 'fromvirginia.com',\n 'fromwashington.com',\n 'fromwashingtondc.com',\n 'fromwestvirginia.com',\n 'fromwisconsin.com',\n 'fromwyoming.com',\n 'front.ru',\n 'frontier.com',\n 'frontiernet.net',\n 'frostbyte.uk.net',\n 'fsmail.net',\n 'ftml.net',\n 'fullchannel.net',\n 'fullmail.com',\n 'funkfan.com',\n 'fuorissimo.com',\n 'furnitureprovider.com',\n 'fuse.net',\n 'fut.es',\n 'fwnb.com',\n 'fxsmails.com',\n 'galamb.net',\n 'galaxy5.com',\n 'gamebox.net',\n 'gamegeek.com',\n 'games.com',\n 'gamespotmail.com',\n 'garbage.com',\n 'gardener.com',\n 'gateway.net',\n 'gawab.com',\n 'gaybrighton.co.uk',\n 'gaza.net',\n 'gazeta.pl',\n 'gazibooks.com',\n 'gci.net',\n 'gee-wiz.com',\n 'geecities.com',\n 'geek.com',\n 'geek.hu',\n 'geeklife.com',\n 'general-hospital.com',\n 'geocities.com',\n 'geologist.com',\n 'geopia.com',\n 'gh2000.com',\n 'ghanamail.com',\n 'ghostmail.com',\n 'giantsfan.com',\n 'giga4u.de',\n 'gigileung.org',\n 'givepeaceachance.com',\n 'glay.org',\n 'glendale.net',\n 'globalfree.it',\n 'globalpagan.com',\n 'globalsite.com.br',\n 'globo.com',\n 'globomail.com',\n 'gmail.com',\n 'gmx.at',\n 'gmx.com',\n 'gmx.de',\n 'gmx.fr',\n 'gmx.li',\n 'gmx.net',\n 'gnwmail.com',\n 'go.com',\n 'go.ro',\n 'go.ru',\n 'go2.com.py',\n 'go2net.com',\n 'gocollege.com',\n 'gocubs.com',\n 'gofree.co.uk',\n 'goldenmail.ru',\n 'goldmail.ru',\n 'golfemail.com',\n 'golfmail.be',\n 'gonavy.net',\n 'goodstick.com',\n 'google.com',\n 'googlemail.com',\n 'goplay.com',\n 'gorontalo.net',\n 'gospelfan.com',\n 'gothere.uk.com',\n 'gotmail.com',\n 'gotomy.com',\n 'govolsfan.com',\n 'gportal.hu',\n 'grabmail.com',\n 'graffiti.net',\n 'gramszu.net',\n 'grapplers.com',\n 'gratisweb.com',\n 'grungecafe.com',\n 'gtemail.net',\n 'gti.net',\n 'gtmc.net',\n 'gua.net',\n 'guessmail.com',\n 'guju.net',\n 'gurlmail.com',\n 'guy.com',\n 'guy2.com',\n 'guyanafriends.com',\n 'gyorsposta.com',\n 'gyorsposta.hu',\n 'hackermail.net',\n 'hailmail.net',\n 'hairdresser.net',\n 'hamptonroads.com',\n 'handbag.com',\n 'handleit.com',\n 'hang-ten.com',\n 'hanmail.net',\n 'happemail.com',\n 'happycounsel.com',\n 'happypuppy.com',\n 'hardcorefreak.com',\n 'hawaii.rr.com',\n 'hawaiiantel.net',\n 'headbone.com',\n 'heartthrob.com',\n 'heerschap.com',\n 'heesun.net',\n 'hehe.com',\n 'hello.hu',\n 'hello.net.au',\n 'hello.to',\n 'helter-skelter.com',\n 'hempseed.com',\n 'herediano.com',\n 'heremail.com',\n 'herono1.com',\n 'hetnet.nl',\n 'hey.to',\n 'hhdevel.com',\n 'highmilton.com',\n 'highquality.com',\n 'highveldmail.co.za',\n 'hiphopfan.com',\n 'hispavista.com',\n 'hitthe.net',\n 'hkg.net',\n 'hkstarphoto.com',\n 'hockeymail.com',\n 'hollywoodkids.com',\n 'home-email.com',\n 'home.nl',\n 'home.no.net',\n 'home.ro',\n 'home.se',\n 'homeart.com',\n 'homelocator.com',\n 'homemail.com',\n 'homestead.com',\n 'homeworkcentral.com',\n 'hongkong.com',\n 'hookup.net',\n 'hoopsmail.com',\n 'horrormail.com',\n 'host-it.com.sg',\n 'hot-shot.com',\n 'hot.ee',\n 'hotbot.com',\n 'hotbrev.com',\n 'hotepmail.com',\n 'hotfire.net',\n 'hotletter.com',\n 'hotmail.be',\n 'hotmail.co.il',\n 'hotmail.co.uk',\n 'hotmail.com',\n 'hotmail.com.ar',\n 'hotmail.com.br',\n 'hotmail.com.mx',\n 'hotmail.de',\n 'hotmail.es',\n 'hotmail.fr',\n 'hotmail.it',\n 'hotmail.kg',\n 'hotmail.kz',\n 'hotmail.ru',\n 'hotpop.com',\n 'hotpop3.com',\n 'hotvoice.com',\n 'housefancom',\n 'housemail.com',\n 'hsuchi.net',\n 'html.tou.com',\n 'hughes.net',\n 'hunsa.com',\n 'hush.com',\n 'hushmail.com',\n 'hypernautica.com',\n 'i-connect.com',\n 'i-france.com',\n 'i-mail.com.au',\n 'i-p.com',\n 'i-plus.net',\n 'i.am',\n 'i12.com',\n 'iamawoman.com',\n 'iamwaiting.com',\n 'iamwasted.com',\n 'iamyours.com',\n 'ibm.net',\n 'icestorm.com',\n 'icloud.com',\n 'icmsconsultants.com',\n 'icq.com',\n 'icqmail.com',\n 'icrazy.com',\n 'id-base.com',\n 'ididitmyway.com',\n 'idirect.com',\n 'iespana.es',\n 'ifoward.com',\n 'ig.com.br',\n 'ignazio.it',\n 'ignmail.com',\n 'ihateclowns.com',\n 'ihwy.com',\n 'iinet.net.au',\n 'ijustdontcare.com',\n 'ilovechocolate.com',\n 'ilovejesus.com',\n 'ilovethemovies.com',\n 'ilovetocollect.net',\n 'ilse.nl',\n 'imaginemail.com',\n 'imail.org',\n 'imail.ru',\n 'imailbox.com',\n 'imel.org',\n 'imneverwrong.com',\n 'imposter.co.uk',\n 'imstressed.com',\n 'imtoosexy.com',\n 'in-box.net',\n 'iname.com',\n 'inbox.com',\n 'inbox.net',\n 'inbox.ru',\n 'incamail.com',\n 'incredimail.com',\n 'indexa.fr',\n 'india.com',\n 'indiatimes.com',\n 'indo-mail.com',\n 'indocities.com',\n 'indomail.com',\n 'indyracers.com',\n 'info-media.de',\n 'info66.com',\n 'infohq.com',\n 'infomail.es',\n 'infomart.or.jp',\n 'infospacemail.com',\n 'infovia.com.ar',\n 'inicia.es',\n 'inmail.sk',\n 'innocent.com',\n 'inorbit.com',\n 'insidebaltimore.net',\n 'insight.rr.com',\n 'insurer.com',\n 'integra.net',\n 'interaccess.com',\n 'interburp.com',\n 'interfree.it',\n 'interia.pl',\n 'interlap.com.ar',\n 'intermail.co.il',\n 'internet-club.com',\n 'internet-police.com',\n 'internetbiz.com',\n 'internetdrive.com',\n 'internetegypt.com',\n 'internetemails.net',\n 'internetmailing.net',\n 'internetmci.com',\n 'investormail.com',\n 'inwind.it',\n 'iobox.com',\n 'iobox.fi',\n 'iol.it',\n 'ionet.net',\n 'iowaemail.com',\n 'ip3.com',\n 'iprimus.com.au',\n 'iqemail.com',\n 'irangate.net',\n 'iraqmail.com',\n 'ireland.com',\n 'irj.hu',\n 'isellcars.com',\n 'islamonline.net',\n 'isleuthmail.com',\n 'ismart.net',\n 'isonfire.com',\n 'isp9.net',\n 'itelefonica.com.br',\n 'itloox.com',\n 'itmom.com',\n 'itol.com',\n 'ivebeenframed.com',\n 'ivillage.com',\n 'iwan-fals.com',\n 'iwmail.com',\n 'iwon.com',\n 'izadpanah.com',\n 'jahoopa.com',\n 'jakuza.hu',\n 'japan.com',\n 'jaydemail.com',\n 'jazzandjava.com',\n 'jazzfan.com',\n 'jazzgame.com',\n 'jerusalemmail.com',\n 'jetemail.net',\n 'jewishmail.com',\n 'jippii.fi',\n 'jmail.co.za',\n 'joinme.com',\n 'jokes.com',\n 'jordanmail.com',\n 'journalist.com',\n 'jovem.te.pt',\n 'joymail.com',\n 'jpopmail.com',\n 'jubiimail.dk',\n 'jump.com',\n 'jumpy.it',\n 'juniormail.com',\n 'juno.com',\n 'justemail.net',\n 'justicemail.com',\n 'kaazoo.com',\n 'kaixo.com',\n 'kalpoint.com',\n 'kansascity.com',\n 'kapoorweb.com',\n 'karachian.com',\n 'karachioye.com',\n 'karbasi.com',\n 'katamail.com',\n 'kayafmmail.co.za',\n 'kbjrmail.com',\n 'kcks.com',\n 'keg-party.com',\n 'keko.com.ar',\n 'kellychen.com',\n 'keromail.com',\n 'keyemail.com',\n 'kgb.hu',\n 'khosropour.com',\n 'kickassmail.com',\n 'killermail.com',\n 'kimo.com',\n 'kinki-kids.com',\n 'kittymail.com',\n 'kitznet.at',\n 'kiwibox.com',\n 'kiwitown.com',\n 'kmail.com.au',\n 'konx.com',\n 'korea.com',\n 'kozmail.com',\n 'krongthip.com',\n 'krunis.com',\n 'ksanmail.com',\n 'ksee24mail.com',\n 'kube93mail.com',\n 'kukamail.com',\n 'kumarweb.com',\n 'kuwait-mail.com',\n 'la.com',\n 'ladymail.cz',\n 'lagerlouts.com',\n 'lahoreoye.com',\n 'lakmail.com',\n 'lamer.hu',\n 'land.ru',\n 'lankamail.com',\n 'laposte.net',\n 'latemodels.com',\n 'latinmail.com',\n 'latino.com',\n 'lavabit.com',\n 'law.com',\n 'lawyer.com',\n 'leehom.net',\n 'legalactions.com',\n 'legislator.com',\n 'leonlai.net',\n 'letsgomets.net',\n 'letterbox.com',\n 'levele.com',\n 'levele.hu',\n 'lex.bg',\n 'lexis-nexis-mail.com',\n 'libero.it',\n 'liberomail.com',\n 'lick101.com',\n 'linkmaster.com',\n 'linktrader.com',\n 'linuxfreemail.com',\n 'linuxmail.org',\n 'lionsfan.com.au',\n 'liontrucks.com',\n 'liquidinformation.net',\n 'list.ru',\n 'littleblueroom.com',\n 'live.be',\n 'live.ca',\n 'live.co.uk',\n 'live.com',\n 'live.com.ar',\n 'live.com.au',\n 'live.com.mx',\n 'live.de',\n 'live.fr',\n 'live.it',\n 'live.nl',\n 'liverpoolfans.com',\n 'llandudno.com',\n 'llangollen.com',\n 'lmxmail.sk',\n 'lobbyist.com',\n 'localbar.com',\n 'london.com',\n 'loobie.com',\n 'looksmart.co.uk',\n 'looksmart.com',\n 'looksmart.com.au',\n 'lopezclub.com',\n 'louiskoo.com',\n 'love.com',\n 'love.cz',\n 'loveable.com',\n 'lovelygirl.net',\n 'lovemail.com',\n 'lover-boy.com',\n 'lovergirl.com',\n 'lovingjesus.com',\n 'lowandslow.com',\n 'luso.pt',\n 'luukku.com',\n 'lycos.co.uk',\n 'lycos.com',\n 'lycos.es',\n 'lycos.it',\n 'lycos.ne.jp',\n 'lycosemail.com',\n 'lycosmail.com',\n 'm-a-i-l.com',\n 'm-hmail.com',\n 'm4.org',\n 'mac.com',\n 'macbox.com',\n 'macfreak.com',\n 'machinecandy.com',\n 'macmail.com',\n 'madcreations.com',\n 'madrid.com',\n 'maffia.hu',\n 'magicmail.co.za',\n 'mahmoodweb.com',\n 'mail-awu.de',\n 'mail-box.cz',\n 'mail-center.com',\n 'mail-central.com',\n 'mail-page.com',\n 'mail.austria.com',\n 'mail.az',\n 'mail.be',\n 'mail.bulgaria.com',\n 'mail.byte.it',\n 'mail.co.za',\n 'mail.com',\n 'mail.ee',\n 'mail.entrepeneurmag.com',\n 'mail.freetown.com',\n 'mail.gr',\n 'mail.hitthebeach.com',\n 'mail.kmsp.com',\n 'mail.md',\n 'mail.nu',\n 'mail.org.uk',\n 'mail.pf',\n 'mail.pharmacy.com',\n 'mail.pt',\n 'mail.r-o-o-t.com',\n 'mail.ru',\n 'mail.salu.net',\n 'mail.sisna.com',\n 'mail.spaceports.com',\n 'mail.theboys.com',\n 'mail.usa.com',\n 'mail.vasarhely.hu',\n 'mail15.com',\n 'mail1st.com',\n 'mail2007.com',\n 'mail2aaron.com',\n 'mail2abby.com',\n 'mail2abc.com',\n 'mail2actor.com',\n 'mail2admiral.com',\n 'mail2adorable.com',\n 'mail2adoration.com',\n 'mail2adore.com',\n 'mail2adventure.com',\n 'mail2aeolus.com',\n 'mail2aether.com',\n 'mail2affection.com',\n 'mail2afghanistan.com',\n 'mail2africa.com',\n 'mail2agent.com',\n 'mail2aha.com',\n 'mail2ahoy.com',\n 'mail2aim.com',\n 'mail2air.com',\n 'mail2airbag.com',\n 'mail2airforce.com',\n 'mail2airport.com',\n 'mail2alabama.com',\n 'mail2alan.com',\n 'mail2alaska.com',\n 'mail2albania.com',\n 'mail2alcoholic.com',\n 'mail2alec.com',\n 'mail2alexa.com',\n 'mail2algeria.com',\n 'mail2alicia.com',\n 'mail2alien.com',\n 'mail2allan.com',\n 'mail2allen.com',\n 'mail2allison.com',\n 'mail2alpha.com',\n 'mail2alyssa.com',\n 'mail2amanda.com',\n 'mail2amazing.com',\n 'mail2amber.com',\n 'mail2america.com',\n 'mail2american.com',\n 'mail2andorra.com',\n 'mail2andrea.com',\n 'mail2andy.com',\n 'mail2anesthesiologist.com',\n 'mail2angela.com',\n 'mail2angola.com',\n 'mail2ann.com',\n 'mail2anna.com',\n 'mail2anne.com',\n 'mail2anthony.com',\n 'mail2anything.com',\n 'mail2aphrodite.com',\n 'mail2apollo.com',\n 'mail2april.com',\n 'mail2aquarius.com',\n 'mail2arabia.com',\n 'mail2arabic.com',\n 'mail2architect.com',\n 'mail2ares.com',\n 'mail2argentina.com',\n 'mail2aries.com',\n 'mail2arizona.com',\n 'mail2arkansas.com',\n 'mail2armenia.com',\n 'mail2army.com',\n 'mail2arnold.com',\n 'mail2art.com',\n 'mail2artemus.com',\n 'mail2arthur.com',\n 'mail2artist.com',\n 'mail2ashley.com',\n 'mail2ask.com',\n 'mail2astronomer.com',\n 'mail2athena.com',\n 'mail2athlete.com',\n 'mail2atlas.com',\n 'mail2atom.com',\n 'mail2attitude.com',\n 'mail2auction.com',\n 'mail2aunt.com',\n 'mail2australia.com',\n 'mail2austria.com',\n 'mail2azerbaijan.com',\n 'mail2baby.com',\n 'mail2bahamas.com',\n 'mail2bahrain.com',\n 'mail2ballerina.com',\n 'mail2ballplayer.com',\n 'mail2band.com',\n 'mail2bangladesh.com',\n 'mail2bank.com',\n 'mail2banker.com',\n 'mail2bankrupt.com',\n 'mail2baptist.com',\n 'mail2bar.com',\n 'mail2barbados.com',\n 'mail2barbara.com',\n 'mail2barter.com',\n 'mail2basketball.com',\n 'mail2batter.com',\n 'mail2beach.com',\n 'mail2beast.com',\n 'mail2beatles.com',\n 'mail2beauty.com',\n 'mail2becky.com',\n 'mail2beijing.com',\n 'mail2belgium.com',\n 'mail2belize.com',\n 'mail2ben.com',\n 'mail2bernard.com',\n 'mail2beth.com',\n 'mail2betty.com',\n 'mail2beverly.com',\n 'mail2beyond.com',\n 'mail2biker.com',\n 'mail2bill.com',\n 'mail2billionaire.com',\n 'mail2billy.com',\n 'mail2bio.com',\n 'mail2biologist.com',\n 'mail2black.com',\n 'mail2blackbelt.com',\n 'mail2blake.com',\n 'mail2blind.com',\n 'mail2blonde.com',\n 'mail2blues.com',\n 'mail2bob.com',\n 'mail2bobby.com',\n 'mail2bolivia.com',\n 'mail2bombay.com',\n 'mail2bonn.com',\n 'mail2bookmark.com',\n 'mail2boreas.com',\n 'mail2bosnia.com',\n 'mail2boston.com',\n 'mail2botswana.com',\n 'mail2bradley.com',\n 'mail2brazil.com',\n 'mail2breakfast.com',\n 'mail2brian.com',\n 'mail2bride.com',\n 'mail2brittany.com',\n 'mail2broker.com',\n 'mail2brook.com',\n 'mail2bruce.com',\n 'mail2brunei.com',\n 'mail2brunette.com',\n 'mail2brussels.com',\n 'mail2bryan.com',\n 'mail2bug.com',\n 'mail2bulgaria.com',\n 'mail2business.com',\n 'mail2buy.com',\n 'mail2ca.com',\n 'mail2california.com',\n 'mail2calvin.com',\n 'mail2cambodia.com',\n 'mail2cameroon.com',\n 'mail2canada.com',\n 'mail2cancer.com',\n 'mail2capeverde.com',\n 'mail2capricorn.com',\n 'mail2cardinal.com',\n 'mail2cardiologist.com',\n 'mail2care.com',\n 'mail2caroline.com',\n 'mail2carolyn.com',\n 'mail2casey.com',\n 'mail2cat.com',\n 'mail2caterer.com',\n 'mail2cathy.com',\n 'mail2catlover.com',\n 'mail2catwalk.com',\n 'mail2cell.com',\n 'mail2chad.com',\n 'mail2champaign.com',\n 'mail2charles.com',\n 'mail2chef.com',\n 'mail2chemist.com',\n 'mail2cherry.com',\n 'mail2chicago.com',\n 'mail2chile.com',\n 'mail2china.com',\n 'mail2chinese.com',\n 'mail2chocolate.com',\n 'mail2christian.com',\n 'mail2christie.com',\n 'mail2christmas.com',\n 'mail2christy.com',\n 'mail2chuck.com',\n 'mail2cindy.com',\n 'mail2clark.com',\n 'mail2classifieds.com',\n 'mail2claude.com',\n 'mail2cliff.com',\n 'mail2clinic.com',\n 'mail2clint.com',\n 'mail2close.com',\n 'mail2club.com',\n 'mail2coach.com',\n 'mail2coastguard.com',\n 'mail2colin.com',\n 'mail2college.com',\n 'mail2colombia.com',\n 'mail2color.com',\n 'mail2colorado.com',\n 'mail2columbia.com',\n 'mail2comedian.com',\n 'mail2composer.com',\n 'mail2computer.com',\n 'mail2computers.com',\n 'mail2concert.com',\n 'mail2congo.com',\n 'mail2connect.com',\n 'mail2connecticut.com',\n 'mail2consultant.com',\n 'mail2convict.com',\n 'mail2cook.com',\n 'mail2cool.com',\n 'mail2cory.com',\n 'mail2costarica.com',\n 'mail2country.com',\n 'mail2courtney.com',\n 'mail2cowboy.com',\n 'mail2cowgirl.com',\n 'mail2craig.com',\n 'mail2crave.com',\n 'mail2crazy.com',\n 'mail2create.com',\n 'mail2croatia.com',\n 'mail2cry.com',\n 'mail2crystal.com',\n 'mail2cuba.com',\n 'mail2culture.com',\n 'mail2curt.com',\n 'mail2customs.com',\n 'mail2cute.com',\n 'mail2cutey.com',\n 'mail2cynthia.com',\n 'mail2cyprus.com',\n 'mail2czechrepublic.com',\n 'mail2dad.com',\n 'mail2dale.com',\n 'mail2dallas.com',\n 'mail2dan.com',\n 'mail2dana.com',\n 'mail2dance.com',\n 'mail2dancer.com',\n 'mail2danielle.com',\n 'mail2danny.com',\n 'mail2darlene.com',\n 'mail2darling.com',\n 'mail2darren.com',\n 'mail2daughter.com',\n 'mail2dave.com',\n 'mail2dawn.com',\n 'mail2dc.com',\n 'mail2dealer.com',\n 'mail2deanna.com',\n 'mail2dearest.com',\n 'mail2debbie.com',\n 'mail2debby.com',\n 'mail2deer.com',\n 'mail2delaware.com',\n 'mail2delicious.com',\n 'mail2demeter.com',\n 'mail2democrat.com',\n 'mail2denise.com',\n 'mail2denmark.com',\n 'mail2dennis.com',\n 'mail2dentist.com',\n 'mail2derek.com',\n 'mail2desert.com',\n 'mail2devoted.com',\n 'mail2devotion.com',\n 'mail2diamond.com',\n 'mail2diana.com',\n 'mail2diane.com',\n 'mail2diehard.com',\n 'mail2dilemma.com',\n 'mail2dillon.com',\n 'mail2dinner.com',\n 'mail2dinosaur.com',\n 'mail2dionysos.com',\n 'mail2diplomat.com',\n 'mail2director.com',\n 'mail2dirk.com',\n 'mail2disco.com',\n 'mail2dive.com',\n 'mail2diver.com',\n 'mail2divorced.com',\n 'mail2djibouti.com',\n 'mail2doctor.com',\n 'mail2doglover.com',\n 'mail2dominic.com',\n 'mail2dominica.com',\n 'mail2dominicanrepublic.com',\n 'mail2don.com',\n 'mail2donald.com',\n 'mail2donna.com',\n 'mail2doris.com',\n 'mail2dorothy.com',\n 'mail2doug.com',\n 'mail2dough.com',\n 'mail2douglas.com',\n 'mail2dow.com',\n 'mail2downtown.com',\n 'mail2dream.com',\n 'mail2dreamer.com',\n 'mail2dude.com',\n 'mail2dustin.com',\n 'mail2dyke.com',\n 'mail2dylan.com',\n 'mail2earl.com',\n 'mail2earth.com',\n 'mail2eastend.com',\n 'mail2eat.com',\n 'mail2economist.com',\n 'mail2ecuador.com',\n 'mail2eddie.com',\n 'mail2edgar.com',\n 'mail2edwin.com',\n 'mail2egypt.com',\n 'mail2electron.com',\n 'mail2eli.com',\n 'mail2elizabeth.com',\n 'mail2ellen.com',\n 'mail2elliot.com',\n 'mail2elsalvador.com',\n 'mail2elvis.com',\n 'mail2emergency.com',\n 'mail2emily.com',\n 'mail2engineer.com',\n 'mail2english.com',\n 'mail2environmentalist.com',\n 'mail2eos.com',\n 'mail2eric.com',\n 'mail2erica.com',\n 'mail2erin.com',\n 'mail2erinyes.com',\n 'mail2eris.com',\n 'mail2eritrea.com',\n 'mail2ernie.com',\n 'mail2eros.com',\n 'mail2estonia.com',\n 'mail2ethan.com',\n 'mail2ethiopia.com',\n 'mail2eu.com',\n 'mail2europe.com',\n 'mail2eurus.com',\n 'mail2eva.com',\n 'mail2evan.com',\n 'mail2evelyn.com',\n 'mail2everything.com',\n 'mail2exciting.com',\n 'mail2expert.com',\n 'mail2fairy.com',\n 'mail2faith.com',\n 'mail2fanatic.com',\n 'mail2fancy.com',\n 'mail2fantasy.com',\n 'mail2farm.com',\n 'mail2farmer.com',\n 'mail2fashion.com',\n 'mail2fat.com',\n 'mail2feeling.com',\n 'mail2female.com',\n 'mail2fever.com',\n 'mail2fighter.com',\n 'mail2fiji.com',\n 'mail2filmfestival.com',\n 'mail2films.com',\n 'mail2finance.com',\n 'mail2finland.com',\n 'mail2fireman.com',\n 'mail2firm.com',\n 'mail2fisherman.com',\n 'mail2flexible.com',\n 'mail2florence.com',\n 'mail2florida.com',\n 'mail2floyd.com',\n 'mail2fly.com',\n 'mail2fond.com',\n 'mail2fondness.com',\n 'mail2football.com',\n 'mail2footballfan.com',\n 'mail2found.com',\n 'mail2france.com',\n 'mail2frank.com',\n 'mail2frankfurt.com',\n 'mail2franklin.com',\n 'mail2fred.com',\n 'mail2freddie.com',\n 'mail2free.com',\n 'mail2freedom.com',\n 'mail2french.com',\n 'mail2freudian.com',\n 'mail2friendship.com',\n 'mail2from.com',\n 'mail2fun.com',\n 'mail2gabon.com',\n 'mail2gabriel.com',\n 'mail2gail.com',\n 'mail2galaxy.com',\n 'mail2gambia.com',\n 'mail2games.com',\n 'mail2gary.com',\n 'mail2gavin.com',\n 'mail2gemini.com',\n 'mail2gene.com',\n 'mail2genes.com',\n 'mail2geneva.com',\n 'mail2george.com',\n 'mail2georgia.com',\n 'mail2gerald.com',\n 'mail2german.com',\n 'mail2germany.com',\n 'mail2ghana.com',\n 'mail2gilbert.com',\n 'mail2gina.com',\n 'mail2girl.com',\n 'mail2glen.com',\n 'mail2gloria.com',\n 'mail2goddess.com',\n 'mail2gold.com',\n 'mail2golfclub.com',\n 'mail2golfer.com',\n 'mail2gordon.com',\n 'mail2government.com',\n 'mail2grab.com',\n 'mail2grace.com',\n 'mail2graham.com',\n 'mail2grandma.com',\n 'mail2grandpa.com',\n 'mail2grant.com',\n 'mail2greece.com',\n 'mail2green.com',\n 'mail2greg.com',\n 'mail2grenada.com',\n 'mail2gsm.com',\n 'mail2guard.com',\n 'mail2guatemala.com',\n 'mail2guy.com',\n 'mail2hades.com',\n 'mail2haiti.com',\n 'mail2hal.com',\n 'mail2handhelds.com',\n 'mail2hank.com',\n 'mail2hannah.com',\n 'mail2harold.com',\n 'mail2harry.com',\n 'mail2hawaii.com',\n 'mail2headhunter.com',\n 'mail2heal.com',\n 'mail2heather.com',\n 'mail2heaven.com',\n 'mail2hebe.com',\n 'mail2hecate.com',\n 'mail2heidi.com',\n 'mail2helen.com',\n 'mail2hell.com',\n 'mail2help.com',\n 'mail2helpdesk.com',\n 'mail2henry.com',\n 'mail2hephaestus.com',\n 'mail2hera.com',\n 'mail2hercules.com',\n 'mail2herman.com',\n 'mail2hermes.com',\n 'mail2hespera.com',\n 'mail2hestia.com',\n 'mail2highschool.com',\n 'mail2hindu.com',\n 'mail2hip.com',\n 'mail2hiphop.com',\n 'mail2holland.com',\n 'mail2holly.com',\n 'mail2hollywood.com',\n 'mail2homer.com',\n 'mail2honduras.com',\n 'mail2honey.com',\n 'mail2hongkong.com',\n 'mail2hope.com',\n 'mail2horse.com',\n 'mail2hot.com',\n 'mail2hotel.com',\n 'mail2houston.com',\n 'mail2howard.com',\n 'mail2hugh.com',\n 'mail2human.com',\n 'mail2hungary.com',\n 'mail2hungry.com',\n 'mail2hygeia.com',\n 'mail2hyperspace.com',\n 'mail2hypnos.com',\n 'mail2ian.com',\n 'mail2ice-cream.com',\n 'mail2iceland.com',\n 'mail2idaho.com',\n 'mail2idontknow.com',\n 'mail2illinois.com',\n 'mail2imam.com',\n 'mail2in.com',\n 'mail2india.com',\n 'mail2indian.com',\n 'mail2indiana.com',\n 'mail2indonesia.com',\n 'mail2infinity.com',\n 'mail2intense.com',\n 'mail2iowa.com',\n 'mail2iran.com',\n 'mail2iraq.com',\n 'mail2ireland.com',\n 'mail2irene.com',\n 'mail2iris.com',\n 'mail2irresistible.com',\n 'mail2irving.com',\n 'mail2irwin.com',\n 'mail2isaac.com',\n 'mail2israel.com',\n 'mail2italian.com',\n 'mail2italy.com',\n 'mail2jackie.com',\n 'mail2jacob.com',\n 'mail2jail.com',\n 'mail2jaime.com',\n 'mail2jake.com',\n 'mail2jamaica.com',\n 'mail2james.com',\n 'mail2jamie.com',\n 'mail2jan.com',\n 'mail2jane.com',\n 'mail2janet.com',\n 'mail2janice.com',\n 'mail2japan.com',\n 'mail2japanese.com',\n 'mail2jasmine.com',\n 'mail2jason.com',\n 'mail2java.com',\n 'mail2jay.com',\n 'mail2jazz.com',\n 'mail2jed.com',\n 'mail2jeffrey.com',\n 'mail2jennifer.com',\n 'mail2jenny.com',\n 'mail2jeremy.com',\n 'mail2jerry.com',\n 'mail2jessica.com',\n 'mail2jessie.com',\n 'mail2jesus.com',\n 'mail2jew.com',\n 'mail2jeweler.com',\n 'mail2jim.com',\n 'mail2jimmy.com',\n 'mail2joan.com',\n 'mail2joann.com',\n 'mail2joanna.com',\n 'mail2jody.com',\n 'mail2joe.com',\n 'mail2joel.com',\n 'mail2joey.com',\n 'mail2john.com',\n 'mail2join.com',\n 'mail2jon.com',\n 'mail2jonathan.com',\n 'mail2jones.com',\n 'mail2jordan.com',\n 'mail2joseph.com',\n 'mail2josh.com',\n 'mail2joy.com',\n 'mail2juan.com',\n 'mail2judge.com',\n 'mail2judy.com',\n 'mail2juggler.com',\n 'mail2julian.com',\n 'mail2julie.com',\n 'mail2jumbo.com',\n 'mail2junk.com',\n 'mail2justin.com',\n 'mail2justme.com',\n 'mail2kansas.com',\n 'mail2karate.com',\n 'mail2karen.com',\n 'mail2karl.com',\n 'mail2karma.com',\n 'mail2kathleen.com',\n 'mail2kathy.com',\n 'mail2katie.com',\n 'mail2kay.com',\n 'mail2kazakhstan.com',\n 'mail2keen.com',\n 'mail2keith.com',\n 'mail2kelly.com',\n 'mail2kelsey.com',\n 'mail2ken.com',\n 'mail2kendall.com',\n 'mail2kennedy.com',\n 'mail2kenneth.com',\n 'mail2kenny.com',\n 'mail2kentucky.com',\n 'mail2kenya.com',\n 'mail2kerry.com',\n 'mail2kevin.com',\n 'mail2kim.com',\n 'mail2kimberly.com',\n 'mail2king.com',\n 'mail2kirk.com',\n 'mail2kiss.com',\n 'mail2kosher.com',\n 'mail2kristin.com',\n 'mail2kurt.com',\n 'mail2kuwait.com',\n 'mail2kyle.com',\n 'mail2kyrgyzstan.com',\n 'mail2la.com',\n 'mail2lacrosse.com',\n 'mail2lance.com',\n 'mail2lao.com',\n 'mail2larry.com',\n 'mail2latvia.com',\n 'mail2laugh.com',\n 'mail2laura.com',\n 'mail2lauren.com',\n 'mail2laurie.com',\n 'mail2lawrence.com',\n 'mail2lawyer.com',\n 'mail2lebanon.com',\n 'mail2lee.com',\n 'mail2leo.com',\n 'mail2leon.com',\n 'mail2leonard.com',\n 'mail2leone.com',\n 'mail2leslie.com',\n 'mail2letter.com',\n 'mail2liberia.com',\n 'mail2libertarian.com',\n 'mail2libra.com',\n 'mail2libya.com',\n 'mail2liechtenstein.com',\n 'mail2life.com',\n 'mail2linda.com',\n 'mail2linux.com',\n 'mail2lionel.com',\n 'mail2lipstick.com',\n 'mail2liquid.com',\n 'mail2lisa.com',\n 'mail2lithuania.com',\n 'mail2litigator.com',\n 'mail2liz.com',\n 'mail2lloyd.com',\n 'mail2lois.com',\n 'mail2lola.com',\n 'mail2london.com',\n 'mail2looking.com',\n 'mail2lori.com',\n 'mail2lost.com',\n 'mail2lou.com',\n 'mail2louis.com',\n 'mail2louisiana.com',\n 'mail2lovable.com',\n 'mail2love.com',\n 'mail2lucky.com',\n 'mail2lucy.com',\n 'mail2lunch.com',\n 'mail2lust.com',\n 'mail2luxembourg.com',\n 'mail2luxury.com',\n 'mail2lyle.com',\n 'mail2lynn.com',\n 'mail2madagascar.com',\n 'mail2madison.com',\n 'mail2madrid.com',\n 'mail2maggie.com',\n 'mail2mail4.com',\n 'mail2maine.com',\n 'mail2malawi.com',\n 'mail2malaysia.com',\n 'mail2maldives.com',\n 'mail2mali.com',\n 'mail2malta.com',\n 'mail2mambo.com',\n 'mail2man.com',\n 'mail2mandy.com',\n 'mail2manhunter.com',\n 'mail2mankind.com',\n 'mail2many.com',\n 'mail2marc.com',\n 'mail2marcia.com',\n 'mail2margaret.com',\n 'mail2margie.com',\n 'mail2marhaba.com',\n 'mail2maria.com',\n 'mail2marilyn.com',\n 'mail2marines.com',\n 'mail2mark.com',\n 'mail2marriage.com',\n 'mail2married.com',\n 'mail2marries.com',\n 'mail2mars.com',\n 'mail2marsha.com',\n 'mail2marshallislands.com',\n 'mail2martha.com',\n 'mail2martin.com',\n 'mail2marty.com',\n 'mail2marvin.com',\n 'mail2mary.com',\n 'mail2maryland.com',\n 'mail2mason.com',\n 'mail2massachusetts.com',\n 'mail2matt.com',\n 'mail2matthew.com',\n 'mail2maurice.com',\n 'mail2mauritania.com',\n 'mail2mauritius.com',\n 'mail2max.com',\n 'mail2maxwell.com',\n 'mail2maybe.com',\n 'mail2mba.com',\n 'mail2me4u.com',\n 'mail2mechanic.com',\n 'mail2medieval.com',\n 'mail2megan.com',\n 'mail2mel.com',\n 'mail2melanie.com',\n 'mail2melissa.com',\n 'mail2melody.com',\n 'mail2member.com',\n 'mail2memphis.com',\n 'mail2methodist.com',\n 'mail2mexican.com',\n 'mail2mexico.com',\n 'mail2mgz.com',\n 'mail2miami.com',\n 'mail2michael.com',\n 'mail2michelle.com',\n 'mail2michigan.com',\n 'mail2mike.com',\n 'mail2milan.com',\n 'mail2milano.com',\n 'mail2mildred.com',\n 'mail2milkyway.com',\n 'mail2millennium.com',\n 'mail2millionaire.com',\n 'mail2milton.com',\n 'mail2mime.com',\n 'mail2mindreader.com',\n 'mail2mini.com',\n 'mail2minister.com',\n 'mail2minneapolis.com',\n 'mail2minnesota.com',\n 'mail2miracle.com',\n 'mail2missionary.com',\n 'mail2mississippi.com',\n 'mail2missouri.com',\n 'mail2mitch.com',\n 'mail2model.com',\n 'mail2moldova.commail2molly.com',\n 'mail2mom.com',\n 'mail2monaco.com',\n 'mail2money.com',\n 'mail2mongolia.com',\n 'mail2monica.com',\n 'mail2montana.com',\n 'mail2monty.com',\n 'mail2moon.com',\n 'mail2morocco.com',\n 'mail2morpheus.com',\n 'mail2mors.com',\n 'mail2moscow.com',\n 'mail2moslem.com',\n 'mail2mouseketeer.com',\n 'mail2movies.com',\n 'mail2mozambique.com',\n 'mail2mp3.com',\n 'mail2mrright.com',\n 'mail2msright.com',\n 'mail2museum.com',\n 'mail2music.com',\n 'mail2musician.com',\n 'mail2muslim.com',\n 'mail2my.com',\n 'mail2myboat.com',\n 'mail2mycar.com',\n 'mail2mycell.com',\n 'mail2mygsm.com',\n 'mail2mylaptop.com',\n 'mail2mymac.com',\n 'mail2mypager.com',\n 'mail2mypalm.com',\n 'mail2mypc.com',\n 'mail2myphone.com',\n 'mail2myplane.com',\n 'mail2namibia.com',\n 'mail2nancy.com',\n 'mail2nasdaq.com',\n 'mail2nathan.com',\n 'mail2nauru.com',\n 'mail2navy.com',\n 'mail2neal.com',\n 'mail2nebraska.com',\n 'mail2ned.com',\n 'mail2neil.com',\n 'mail2nelson.com',\n 'mail2nemesis.com',\n 'mail2nepal.com',\n 'mail2netherlands.com',\n 'mail2network.com',\n 'mail2nevada.com',\n 'mail2newhampshire.com',\n 'mail2newjersey.com',\n 'mail2newmexico.com',\n 'mail2newyork.com',\n 'mail2newzealand.com',\n 'mail2nicaragua.com',\n 'mail2nick.com',\n 'mail2nicole.com',\n 'mail2niger.com',\n 'mail2nigeria.com',\n 'mail2nike.com',\n 'mail2no.com',\n 'mail2noah.com',\n 'mail2noel.com',\n 'mail2noelle.com',\n 'mail2normal.com',\n 'mail2norman.com',\n 'mail2northamerica.com',\n 'mail2northcarolina.com',\n 'mail2northdakota.com',\n 'mail2northpole.com',\n 'mail2norway.com',\n 'mail2notus.com',\n 'mail2noway.com',\n 'mail2nowhere.com',\n 'mail2nuclear.com',\n 'mail2nun.com',\n 'mail2ny.com',\n 'mail2oasis.com',\n 'mail2oceanographer.com',\n 'mail2ohio.com',\n 'mail2ok.com',\n 'mail2oklahoma.com',\n 'mail2oliver.com',\n 'mail2oman.com',\n 'mail2one.com',\n 'mail2onfire.com',\n 'mail2online.com',\n 'mail2oops.com',\n 'mail2open.com',\n 'mail2ophthalmologist.com',\n 'mail2optometrist.com',\n 'mail2oregon.com',\n 'mail2oscars.com',\n 'mail2oslo.com',\n 'mail2painter.com',\n 'mail2pakistan.com',\n 'mail2palau.com',\n 'mail2pan.com',\n 'mail2panama.com',\n 'mail2paraguay.com',\n 'mail2paralegal.com',\n 'mail2paris.com',\n 'mail2park.com',\n 'mail2parker.com',\n 'mail2party.com',\n 'mail2passion.com',\n 'mail2pat.com',\n 'mail2patricia.com',\n 'mail2patrick.com',\n 'mail2patty.com',\n 'mail2paul.com',\n 'mail2paula.com',\n 'mail2pay.com',\n 'mail2peace.com',\n 'mail2pediatrician.com',\n 'mail2peggy.com',\n 'mail2pennsylvania.com',\n 'mail2perry.com',\n 'mail2persephone.com',\n 'mail2persian.com',\n 'mail2peru.com',\n 'mail2pete.com',\n 'mail2peter.com',\n 'mail2pharmacist.com',\n 'mail2phil.com',\n 'mail2philippines.com',\n 'mail2phoenix.com',\n 'mail2phonecall.com',\n 'mail2phyllis.com',\n 'mail2pickup.com',\n 'mail2pilot.com',\n 'mail2pisces.com',\n 'mail2planet.com',\n 'mail2platinum.com',\n 'mail2plato.com',\n 'mail2pluto.com',\n 'mail2pm.com',\n 'mail2podiatrist.com',\n 'mail2poet.com',\n 'mail2poland.com',\n 'mail2policeman.com',\n 'mail2policewoman.com',\n 'mail2politician.com',\n 'mail2pop.com',\n 'mail2pope.com',\n 'mail2popular.com',\n 'mail2portugal.com',\n 'mail2poseidon.com',\n 'mail2potatohead.com',\n 'mail2power.com',\n 'mail2presbyterian.com',\n 'mail2president.com',\n 'mail2priest.com',\n 'mail2prince.com',\n 'mail2princess.com',\n 'mail2producer.com',\n 'mail2professor.com',\n 'mail2protect.com',\n 'mail2psychiatrist.com',\n 'mail2psycho.com',\n 'mail2psychologist.com',\n 'mail2qatar.com',\n 'mail2queen.com',\n 'mail2rabbi.com',\n 'mail2race.com',\n 'mail2racer.com',\n 'mail2rachel.com',\n 'mail2rage.com',\n 'mail2rainmaker.com',\n 'mail2ralph.com',\n 'mail2randy.com',\n 'mail2rap.com',\n 'mail2rare.com',\n 'mail2rave.com',\n 'mail2ray.com',\n 'mail2raymond.com',\n 'mail2realtor.com',\n 'mail2rebecca.com',\n 'mail2recruiter.com',\n 'mail2recycle.com',\n 'mail2redhead.com',\n 'mail2reed.com',\n 'mail2reggie.com',\n 'mail2register.com',\n 'mail2rent.com',\n 'mail2republican.com',\n 'mail2resort.com',\n 'mail2rex.com',\n 'mail2rhodeisland.com',\n 'mail2rich.com',\n 'mail2richard.com',\n 'mail2ricky.com',\n 'mail2ride.com',\n 'mail2riley.com',\n 'mail2rita.com',\n 'mail2rob.com',\n 'mail2robert.com',\n 'mail2roberta.com',\n 'mail2robin.com',\n 'mail2rock.com',\n 'mail2rocker.com',\n 'mail2rod.com',\n 'mail2rodney.com',\n 'mail2romania.com',\n 'mail2rome.com',\n 'mail2ron.com',\n 'mail2ronald.com',\n 'mail2ronnie.com',\n 'mail2rose.com',\n 'mail2rosie.com',\n 'mail2roy.com',\n 'mail2rudy.com',\n 'mail2rugby.com',\n 'mail2runner.com',\n 'mail2russell.com',\n 'mail2russia.com',\n 'mail2russian.com',\n 'mail2rusty.com',\n 'mail2ruth.com',\n 'mail2rwanda.com',\n 'mail2ryan.com',\n 'mail2sa.com',\n 'mail2sabrina.com',\n 'mail2safe.com',\n 'mail2sagittarius.com',\n 'mail2sail.com',\n 'mail2sailor.com',\n 'mail2sal.com',\n 'mail2salaam.com',\n 'mail2sam.com',\n 'mail2samantha.com',\n 'mail2samoa.com',\n 'mail2samurai.com',\n 'mail2sandra.com',\n 'mail2sandy.com',\n 'mail2sanfrancisco.com',\n 'mail2sanmarino.com',\n 'mail2santa.com',\n 'mail2sara.com',\n 'mail2sarah.com',\n 'mail2sat.com',\n 'mail2saturn.com',\n 'mail2saudi.com',\n 'mail2saudiarabia.com',\n 'mail2save.com',\n 'mail2savings.com',\n 'mail2school.com',\n 'mail2scientist.com',\n 'mail2scorpio.com',\n 'mail2scott.com',\n 'mail2sean.com',\n 'mail2search.com',\n 'mail2seattle.com',\n 'mail2secretagent.com',\n 'mail2senate.com',\n 'mail2senegal.com',\n 'mail2sensual.com',\n 'mail2seth.com',\n 'mail2sevenseas.com',\n 'mail2sexy.com',\n 'mail2seychelles.com',\n 'mail2shane.com',\n 'mail2sharon.com',\n 'mail2shawn.com',\n 'mail2ship.com',\n 'mail2shirley.com',\n 'mail2shoot.com',\n 'mail2shuttle.com',\n 'mail2sierraleone.com',\n 'mail2simon.com',\n 'mail2singapore.com',\n 'mail2single.com',\n 'mail2site.com',\n 'mail2skater.com',\n 'mail2skier.com',\n 'mail2sky.com',\n 'mail2sleek.com',\n 'mail2slim.com',\n 'mail2slovakia.com',\n 'mail2slovenia.com',\n 'mail2smile.com',\n 'mail2smith.com',\n 'mail2smooth.com',\n 'mail2soccer.com',\n 'mail2soccerfan.com',\n 'mail2socialist.com',\n 'mail2soldier.com',\n 'mail2somalia.com',\n 'mail2son.com',\n 'mail2song.com',\n 'mail2sos.com',\n 'mail2sound.com',\n 'mail2southafrica.com',\n 'mail2southamerica.com',\n 'mail2southcarolina.com',\n 'mail2southdakota.com',\n 'mail2southkorea.com',\n 'mail2southpole.com',\n 'mail2spain.com',\n 'mail2spanish.com',\n 'mail2spare.com',\n 'mail2spectrum.com',\n 'mail2splash.com',\n 'mail2sponsor.com',\n 'mail2sports.com',\n 'mail2srilanka.com',\n 'mail2stacy.com',\n 'mail2stan.com',\n 'mail2stanley.com',\n 'mail2star.com',\n 'mail2state.com',\n 'mail2stephanie.com',\n 'mail2steve.com',\n 'mail2steven.com',\n 'mail2stewart.com',\n 'mail2stlouis.com',\n 'mail2stock.com',\n 'mail2stockholm.com',\n 'mail2stockmarket.com',\n 'mail2storage.com',\n 'mail2store.com',\n 'mail2strong.com',\n 'mail2student.com',\n 'mail2studio.com',\n 'mail2studio54.com',\n 'mail2stuntman.com',\n 'mail2subscribe.com',\n 'mail2sudan.com',\n 'mail2superstar.com',\n 'mail2surfer.com',\n 'mail2suriname.com',\n 'mail2susan.com',\n 'mail2suzie.com',\n 'mail2swaziland.com',\n 'mail2sweden.com',\n 'mail2sweetheart.com',\n 'mail2swim.com',\n 'mail2swimmer.com',\n 'mail2swiss.com',\n 'mail2switzerland.com',\n 'mail2sydney.com',\n 'mail2sylvia.com',\n 'mail2syria.com',\n 'mail2taboo.com',\n 'mail2taiwan.com',\n 'mail2tajikistan.com',\n 'mail2tammy.com',\n 'mail2tango.com',\n 'mail2tanya.com',\n 'mail2tanzania.com',\n 'mail2tara.com',\n 'mail2taurus.com',\n 'mail2taxi.com',\n 'mail2taxidermist.com',\n 'mail2taylor.com',\n 'mail2taz.com',\n 'mail2teacher.com',\n 'mail2technician.com',\n 'mail2ted.com',\n 'mail2telephone.com',\n 'mail2teletubbie.com',\n 'mail2tenderness.com',\n 'mail2tennessee.com',\n 'mail2tennis.com',\n 'mail2tennisfan.com',\n 'mail2terri.com',\n 'mail2terry.com',\n 'mail2test.com',\n 'mail2texas.com',\n 'mail2thailand.com',\n 'mail2therapy.com',\n 'mail2think.com',\n 'mail2tickets.com',\n 'mail2tiffany.com',\n 'mail2tim.com',\n 'mail2time.com',\n 'mail2timothy.com',\n 'mail2tina.com',\n 'mail2titanic.com',\n 'mail2toby.com',\n 'mail2todd.com',\n 'mail2togo.com',\n 'mail2tom.com',\n 'mail2tommy.com',\n 'mail2tonga.com',\n 'mail2tony.com',\n 'mail2touch.com',\n 'mail2tourist.com',\n 'mail2tracey.com',\n 'mail2tracy.com',\n 'mail2tramp.com',\n 'mail2travel.com',\n 'mail2traveler.com',\n 'mail2travis.com',\n 'mail2trekkie.com',\n 'mail2trex.com',\n 'mail2triallawyer.com',\n 'mail2trick.com',\n 'mail2trillionaire.com',\n 'mail2troy.com',\n 'mail2truck.com',\n 'mail2trump.com',\n 'mail2try.com',\n 'mail2tunisia.com',\n 'mail2turbo.com',\n 'mail2turkey.com',\n 'mail2turkmenistan.com',\n 'mail2tv.com',\n 'mail2tycoon.com',\n 'mail2tyler.com',\n 'mail2u4me.com',\n 'mail2uae.com',\n 'mail2uganda.com',\n 'mail2uk.com',\n 'mail2ukraine.com',\n 'mail2uncle.com',\n 'mail2unsubscribe.com',\n 'mail2uptown.com',\n 'mail2uruguay.com',\n 'mail2usa.com',\n 'mail2utah.com',\n 'mail2uzbekistan.com',\n 'mail2v.com',\n 'mail2vacation.com',\n 'mail2valentines.com',\n 'mail2valerie.com',\n 'mail2valley.com',\n 'mail2vamoose.com',\n 'mail2vanessa.com',\n 'mail2vanuatu.com',\n 'mail2venezuela.com',\n 'mail2venous.com',\n 'mail2venus.com',\n 'mail2vermont.com',\n 'mail2vickie.com',\n 'mail2victor.com',\n 'mail2victoria.com',\n 'mail2vienna.com',\n 'mail2vietnam.com',\n 'mail2vince.com',\n 'mail2virginia.com',\n 'mail2virgo.com',\n 'mail2visionary.com',\n 'mail2vodka.com',\n 'mail2volleyball.com',\n 'mail2waiter.com',\n 'mail2wallstreet.com',\n 'mail2wally.com',\n 'mail2walter.com',\n 'mail2warren.com',\n 'mail2washington.com',\n 'mail2wave.com',\n 'mail2way.com',\n 'mail2waycool.com',\n 'mail2wayne.com',\n 'mail2webmaster.com',\n 'mail2webtop.com',\n 'mail2webtv.com',\n 'mail2weird.com',\n 'mail2wendell.com',\n 'mail2wendy.com',\n 'mail2westend.com',\n 'mail2westvirginia.com',\n 'mail2whether.com',\n 'mail2whip.com',\n 'mail2white.com',\n 'mail2whitehouse.com',\n 'mail2whitney.com',\n 'mail2why.com',\n 'mail2wilbur.com',\n 'mail2wild.com',\n 'mail2willard.com',\n 'mail2willie.com',\n 'mail2wine.com',\n 'mail2winner.com',\n 'mail2wired.com',\n 'mail2wisconsin.com',\n 'mail2woman.com',\n 'mail2wonder.com',\n 'mail2world.com',\n 'mail2worship.com',\n 'mail2wow.com',\n 'mail2www.com',\n 'mail2wyoming.com',\n 'mail2xfiles.com',\n 'mail2xox.com',\n 'mail2yachtclub.com',\n 'mail2yahalla.com',\n 'mail2yemen.com',\n 'mail2yes.com',\n 'mail2yugoslavia.com',\n 'mail2zack.com',\n 'mail2zambia.com',\n 'mail2zenith.com',\n 'mail2zephir.com',\n 'mail2zeus.com',\n 'mail2zipper.com',\n 'mail2zoo.com',\n 'mail2zoologist.com',\n 'mail2zurich.com',\n 'mail3000.com',\n 'mail333.com',\n 'mailandftp.com',\n 'mailandnews.com',\n 'mailas.com',\n 'mailasia.com',\n 'mailbolt.com',\n 'mailbomb.net',\n 'mailboom.com',\n 'mailbox.as',\n 'mailbox.co.za',\n 'mailbox.gr',\n 'mailbox.hu',\n 'mailbr.com.br',\n 'mailc.net',\n 'mailcan.com',\n 'mailcc.com',\n 'mailchoose.co',\n 'mailcity.com',\n 'mailclub.fr',\n 'mailclub.net',\n 'mailexcite.com',\n 'mailforce.net',\n 'mailftp.com',\n 'mailgate.gr',\n 'mailgenie.net',\n 'mailhaven.com',\n 'mailhood.com',\n 'mailingweb.com',\n 'mailisent.com',\n 'mailite.com',\n 'mailme.dk',\n 'mailmight.com',\n 'mailmij.nl',\n 'mailnew.com',\n 'mailops.com',\n 'mailoye.com',\n 'mailpanda.com',\n 'mailpost.zzn.com',\n 'mailpride.com',\n 'mailpuppy.com',\n 'mailroom.com',\n 'mailru.com',\n 'mailsent.net',\n 'mailshuttle.com',\n 'mailstart.com',\n 'mailstartplus.com',\n 'mailsurf.com',\n 'mailtag.com',\n 'mailto.de',\n 'mailup.net',\n 'mailwire.com',\n 'maktoob.com',\n 'malayalamtelevision.net',\n 'manager.de',\n 'mantrafreenet.com',\n 'mantramail.com',\n 'mantraonline.com',\n 'marchmail.com',\n 'mariah-carey.ml.org',\n 'mariahc.com',\n 'marijuana.nl',\n 'marketing.lu',\n 'married-not.com',\n 'marsattack.com',\n 'martindalemail.com',\n 'masrawy.com',\n 'matmail.com',\n 'mauimail.com',\n 'mauritius.com',\n 'maxleft.com',\n 'maxmail.co.uk',\n 'mbox.com.au',\n 'mchsi.com',\n 'mciworldcom.net',\n 'me-mail.hu',\n 'me.com',\n 'medical.net.au',\n 'medione.net',\n 'medmail.com',\n 'medscape.com',\n 'meetingmall.com',\n 'megago.com',\n 'megamail.pt',\n 'megapathdsl.net',\n 'megapoint.com',\n 'mehrani.com',\n 'mehtaweb.com',\n 'mekhong.com',\n 'melodymail.com',\n 'meloo.com',\n 'members.student.com',\n 'message.hu',\n 'messages.to',\n 'metacrawler.com',\n 'metalfan.com',\n 'metta.lk',\n 'miatadriver.com',\n 'miesto.sk',\n 'mighty.co.za',\n 'miho-nakayama.com',\n 'mikrotamanet.com',\n 'millionaireintraining.com',\n 'milmail.com',\n 'mindless.com',\n 'mindspring.com',\n 'mini-mail.com',\n 'misery.net',\n 'mittalweb.com',\n 'mixmail.com',\n 'mjfrogmail.com',\n 'ml1.net',\n 'mobilbatam.com',\n 'mochamail.com',\n 'mohammed.com',\n 'moldova.cc',\n 'moldova.com',\n 'moldovacc.com',\n 'money.net',\n 'montevideo.com.uy',\n 'moonman.com',\n 'moose-mail.com',\n 'mortaza.com',\n 'mosaicfx.com',\n 'most-wanted.com',\n 'mostlysunny.com',\n 'motormania.com',\n 'movemail.com',\n 'movieluver.com',\n 'mp4.it',\n 'mr-potatohead.com',\n 'mrpost.com',\n 'mscold.com',\n 'msgbox.com',\n 'msn.com',\n 'mttestdriver.com',\n 'mundomail.net',\n 'munich.com',\n 'music.com',\n 'musician.org',\n 'musicscene.org',\n 'mybox.it',\n 'mycabin.com',\n 'mycampus.com',\n 'mycity.com',\n 'mycool.com',\n 'mydomain.com',\n 'mydotcomaddress.com',\n 'myfamily.com',\n 'mygo.com',\n 'myiris.com',\n 'mynamedot.com',\n 'mynetaddress.com',\n 'myownemail.com',\n 'myownfriends.com',\n 'mypad.com',\n 'mypersonalemail.com',\n 'myplace.com',\n 'myrealbox.com',\n 'myremarq.com',\n 'myself.com',\n 'mystupidjob.com',\n 'mythirdage.com',\n 'myway.com',\n 'myworldmail.com',\n 'n2.com',\n 'n2business.com',\n 'n2mail.com',\n 'n2software.com',\n 'nabc.biz',\n 'nafe.com',\n 'nagpal.net',\n 'nakedgreens.com',\n 'name.com',\n 'nameplanet.com',\n 'nandomail.com',\n 'naplesnews.net',\n 'naseej.com',\n 'nate.com',\n 'nativestar.net',\n 'nativeweb.net',\n 'naui.net',\n 'nauticom.net',\n 'naver.com',\n 'navigator.lv',\n 'navy.org',\n 'naz.com',\n 'nchoicemail.com',\n 'neeva.net',\n 'nemra1.com',\n 'nenter.com',\n 'neo.rr.com',\n 'nervhq.org',\n 'net-pager.net',\n 'net4b.pt',\n 'net4you.at',\n 'netbounce.com',\n 'netbroadcaster.com',\n 'netby.dk',\n 'netcenter-vn.net',\n 'netcom.ca',\n 'netcom.com',\n 'netcourrier.com',\n 'netexecutive.com',\n 'netexpressway.com',\n 'netgenie.com',\n 'netian.com',\n 'netizen.com.ar',\n 'netlane.com',\n 'netlimit.com',\n 'netmanor.com',\n 'netmongol.com',\n 'netnet.com.sg',\n 'netpiper.com',\n 'netposta.net',\n 'netradiomail.com',\n 'netralink.com',\n 'netscape.com',\n 'netscape.net',\n 'netscapeonline.co.uk',\n 'netsero.net',\n 'netspeedway.com',\n 'netsquare.com',\n 'netster.com',\n 'nettaxi.com',\n 'netzero.com',\n 'netzero.net',\n 'neuf.fr',\n 'newmail.com',\n 'newmail.net',\n 'newmail.ru',\n 'newyork.com',\n 'nexxmail.com',\n 'nfmail.com',\n 'nhmail.com',\n 'nicebush.com',\n 'nicegal.com',\n 'nicholastse.net',\n 'nicolastse.com',\n 'nightmail.com',\n 'nikopage.com',\n 'nimail.com',\n 'nirvanafan.com',\n 'noavar.com',\n 'norika-fujiwara.com',\n 'norikomail.com',\n 'northgates.net',\n 'nospammail.net',\n 'ntlworld.com',\n 'ntscan.com',\n 'ny.com',\n 'nyc.com',\n 'nycmail.com',\n 'nzoomail.com',\n 'o-tay.com',\n 'o2.co.uk',\n 'oaklandas-fan.com',\n 'oceanfree.net',\n 'oddpost.com',\n 'odmail.com',\n 'office-email.com',\n 'officedomain.com',\n 'offroadwarrior.com',\n 'oi.com.br',\n 'oicexchange.com',\n 'okbank.com',\n 'okhuman.com',\n 'okmad.com',\n 'okmagic.com',\n 'okname.net',\n 'okuk.com',\n 'oldies1041.com',\n 'oldies104mail.com',\n 'ole.com',\n 'olemail.com',\n 'olg.com',\n 'olympist.net',\n 'omaninfo.com',\n 'onebox.com',\n 'onenet.com.ar',\n 'onet.pl',\n 'oninet.pt',\n 'online.de',\n 'online.ie',\n 'onlinewiz.com',\n 'onmilwaukee.com',\n 'onobox.com',\n 'onvillage.com',\n 'operafan.com',\n 'operamail.com',\n 'optician.com',\n 'optonline.net',\n 'optusnet.com.au',\n 'orange.fr',\n 'orange.net',\n 'orbitel.bg',\n 'orgmail.net',\n 'osite.com.br',\n 'oso.com',\n 'otakumail.com',\n 'our-computer.com',\n 'our-office.com',\n 'our.st',\n 'ourbrisbane.com',\n 'ournet.md',\n 'outel.com',\n 'outgun.com',\n 'outlook.com',\n 'outlook.com.br',\n 'over-the-rainbow.com',\n 'ownmail.net',\n 'ozbytes.net.au',\n 'ozemail.com.au',\n 'pacbell.net',\n 'pacific-re.com',\n 'packersfan.com',\n 'pagina.de',\n 'pagons.org',\n 'pakistanoye.com',\n 'palestinemail.com',\n 'parkjiyoon.com',\n 'parrot.com',\n 'parsmail.com',\n 'partlycloudy.com',\n 'partynight.at',\n 'parvazi.com',\n 'passwordmail.com',\n 'pathfindermail.com',\n 'patmedia.net',\n 'pconnections.net',\n 'pcpostal.com',\n 'pcsrock.com',\n 'peachworld.com',\n 'pediatrician.com',\n 'pemail.net',\n 'penpen.com',\n 'peoplepc.com',\n 'peopleweb.com',\n 'perfectmail.com',\n 'personal.ro',\n 'personales.com',\n 'petml.com',\n 'pettypool.com',\n 'pezeshkpour.com',\n 'phayze.com',\n 'phreaker.net',\n 'pickupman.com',\n 'picusnet.com',\n 'pigpig.net',\n 'pinoymail.com',\n 'pipeline.com',\n 'piracha.net',\n 'pisem.net',\n 'planet-mail.com',\n 'planet.nl',\n 'planetaccess.com',\n 'planetall.com',\n 'planetarymotion.net',\n 'planetdirect.com',\n 'planetearthinter.net',\n 'planetout.com',\n 'plasa.com',\n 'playersodds.com',\n 'playful.com',\n 'plusmail.com.br',\n 'pmail.net',\n 'pobox.com',\n 'pobox.hu',\n 'pobox.sk',\n 'pochta.ru',\n 'poczta.fm',\n 'poetic.com',\n 'polbox.com',\n 'policeoffice.com',\n 'pool-sharks.com',\n 'poond.com',\n 'popaccount.com',\n 'popmail.com',\n 'popsmail.com',\n 'popstar.com',\n 'populus.net',\n 'portableoffice.com',\n 'portugalmail.com',\n 'portugalmail.pt',\n 'portugalnet.com',\n 'positive-thinking.com',\n 'post.com',\n 'post.cz',\n 'post.sk',\n 'posta.net',\n 'posta.ro',\n 'postaccesslite.com',\n 'postafree.com',\n 'postaweb.com',\n 'poste.it',\n 'postinbox.com',\n 'postino.ch',\n 'postmark.net',\n 'postmaster.co.uk',\n 'postpro.net',\n 'pousa.com',\n 'powerfan.com',\n 'praize.com',\n 'premiumservice.com',\n 'presidency.com',\n 'press.co.jp',\n 'priest.com',\n 'primposta.com',\n 'primposta.hu',\n 'pro.hu',\n 'probemail.com',\n 'prodigy.net',\n 'prodigy.net.mx',\n 'progetplus.it',\n 'programmer.net',\n 'programozo.hu',\n 'proinbox.com',\n 'project2k.com',\n 'prolaunch.com',\n 'promessage.com',\n 'prontomail.com',\n 'protonmail.com',\n 'psi.net',\n 'psv-supporter.com',\n 'ptd.net',\n 'public.usa.com',\n 'publicist.com',\n 'pulp-fiction.com',\n 'punkass.com',\n 'qatarmail.com',\n 'qis.net',\n 'qprfans.com',\n 'qq.com',\n 'qrio.com',\n 'quackquack.com',\n 'quakemail.com',\n 'qudsmail.com',\n 'quepasa.com',\n 'quickwebmail.com',\n 'quiklinks.com',\n 'quikmail.com',\n 'qwest.net',\n 'qwestoffice.net',\n 'r-o-o-t.com',\n 'r7.com',\n 'raakim.com',\n 'racedriver.com',\n 'racefanz.com',\n 'racingfan.com.au',\n 'racingmail.com',\n 'radicalz.com',\n 'ragingbull.com',\n 'rambler.ru',\n 'ranmamail.com',\n 'rastogi.net',\n 'ratt-n-roll.com',\n 'rattle-snake.com',\n 'ravearena.com',\n 'ravemail.com',\n 'razormail.com',\n 'rccgmail.org',\n 'rcn.com',\n 'realemail.net',\n 'reallyfast.biz',\n 'realradiomail.com',\n 'recycler.com',\n 'rediffmail.com',\n 'rediffmailpro.com',\n 'rednecks.com',\n 'redseven.de',\n 'redsfans.com',\n 'reggafan.com',\n 'registerednurses.com',\n 'repairman.com',\n 'reply.hu',\n 'representative.com',\n 'rescueteam.com',\n 'resumemail.com',\n 'rezai.com',\n 'richmondhill.com',\n 'rickymail.com',\n 'rin.ru',\n 'riopreto.com.br',\n 'rn.com',\n 'roadrunner.com',\n 'roanokemail.com',\n 'rock.com',\n 'rocketmail.com',\n 'rockfan.com',\n 'rodrun.com',\n 'rome.com',\n 'roosh.com',\n 'rotfl.com',\n 'roughnet.com',\n 'rr.com',\n 'rrohio.com',\n 'rsub.com',\n 'rubyridge.com',\n 'runbox.com',\n 'rushpost.com',\n 'ruttolibero.com',\n 'rvshop.com',\n 's-mail.com',\n 'sabreshockey.com',\n 'sacbeemail.com',\n 'safarimail.com',\n 'safe-mail.net',\n 'sagra.lu',\n 'sailormoon.com',\n 'saintly.com',\n 'saintmail.net',\n 'sale-sale-sale.com',\n 'salehi.net',\n 'samerica.com',\n 'samilan.net',\n 'sammimail.com',\n 'sanfranmail.com',\n 'sanook.com',\n 'sapo.pt',\n 'sativa.ro.org',\n 'saudia.com',\n 'sayhi.net',\n 'sbcglobal.net',\n 'scandalmail.com',\n 'schizo.com',\n 'schoolemail.com',\n 'schoolmail.com',\n 'schoolsucks.com',\n 'schweiz.org',\n 'sci.fi',\n 'science.com.au',\n 'scientist.com',\n 'scifianime.com',\n 'scottishmail.co.uk',\n 'scubadiving.com',\n 'seanet.com',\n 'searchwales.com',\n 'sebil.com',\n 'secret-police.com',\n 'secretservices.net',\n 'seductive.com',\n 'seekstoyboy.com',\n 'seguros.com.br',\n 'send.hu',\n 'sendme.cz',\n 'sent.com',\n 'sentrismail.com',\n 'serga.com.ar',\n 'servemymail.com',\n 'sesmail.com',\n 'sexmagnet.com',\n 'seznam.cz',\n 'sfr.fr',\n 'shahweb.net',\n 'shaniastuff.com',\n 'sharewaredevelopers.com',\n 'sharmaweb.com',\n 'shaw.ca',\n 'she.com',\n 'shootmail.com',\n 'shotgun.hu',\n 'shuf.com',\n 'sialkotcity.com',\n 'sialkotian.com',\n 'sialkotoye.com',\n 'sify.com',\n 'silkroad.net',\n 'sina.cn',\n 'sina.com',\n 'sinamail.com',\n 'singapore.com',\n 'singmail.com',\n 'singnet.com.sg',\n 'singpost.com',\n 'skafan.com',\n 'skim.com',\n 'skizo.hu',\n 'sky.com',\n 'skynet.be',\n 'slamdunkfan.com',\n 'slingshot.com',\n 'slo.net',\n 'slotter.com',\n 'smapxsmap.net',\n 'smileyface.comsmithemail.net',\n 'smoothmail.com',\n 'snail-mail.net',\n 'snail-mail.ney',\n 'snakemail.com',\n 'sndt.net',\n 'sneakemail.com',\n 'snet.net',\n 'snip.net',\n 'sniper.hu',\n 'snoopymail.com',\n 'snowboarding.com',\n 'snowdonia.net',\n 'socamail.com',\n 'socceramerica.net',\n 'soccermail.com',\n 'soccermomz.com',\n 'sociologist.com',\n 'softhome.net',\n 'sol.dk',\n 'soldier.hu',\n 'soon.com',\n 'soulfoodcookbook.com',\n 'sp.nl',\n 'space-bank.com',\n 'space-man.com',\n 'space-ship.com',\n 'space-travel.com',\n 'space.com',\n 'spaceart.com',\n 'spacebank.com',\n 'spacemart.com',\n 'spacetowns.com',\n 'spacewar.com',\n 'spamex.com',\n 'spartapiet.com',\n 'spazmail.com',\n 'speedemail.net',\n 'speedpost.net',\n 'speedrules.com',\n 'speedrulz.com',\n 'speedy.com.ar',\n 'spils.com',\n 'spinfinder.com',\n 'sportemail.com',\n 'sportsmail.com',\n 'sporttruckdriver.com',\n 'spray.no',\n 'spray.se',\n 'sprintmail.com',\n 'sprynet.com',\n 'spymac.com',\n 'srilankan.net',\n 'st-davids.net',\n 'stade.fr',\n 'stalag13.com',\n 'stargateradio.com',\n 'starmail.com',\n 'starmail.org',\n 'starmedia.com',\n 'starplace.com',\n 'starpower.net',\n 'starspath.com',\n 'start.com.au',\n 'starting-point.com',\n 'startrekmail.com',\n 'stealthmail.com',\n 'stockracer.com',\n 'stones.com',\n 'stopdropandroll.com',\n 'storksite.com',\n 'stribmail.com',\n 'strompost.com',\n 'strongguy.com',\n 'studentcenter.org',\n 'subnetwork.com',\n 'subram.com',\n 'sudanmail.net',\n 'suhabi.com',\n 'suisse.org',\n 'sukhumvit.net',\n 'sunpoint.net',\n 'sunrise-sunset.com',\n 'sunsgame.com',\n 'sunumail.sn',\n 'superdada.com',\n 'supereva.it',\n 'supermail.ru',\n 'surat.com',\n 'surf3.net',\n 'surfree.com',\n 'surfy.net',\n 'surimail.com',\n 'survivormail.com',\n 'swbell.net',\n 'sweb.cz',\n 'swiftdesk.com',\n 'swingeasyhithard.com',\n 'swingfan.com',\n 'swipermail.zzn.com',\n 'swirve.com',\n 'swissinfo.org',\n 'swissmail.net',\n 'switchboardmail.com',\n 'switzerland.org',\n 'swva.net',\n 'sx172.com',\n 'sympatico.ca',\n 'syom.com',\n 'syriamail.com',\n 't-online.de',\n 't2mail.com',\n 'takuyakimura.com',\n 'talk21.com',\n 'talkcity.com',\n 'talktalk.co.uk',\n 'tamil.com',\n 'tampabay.rr.com',\n 'tatanova.com',\n 'tbwt.com',\n 'tds.net',\n 'teamdiscovery.com',\n 'teamtulsa.net',\n 'tech4peace.org',\n 'techemail.com',\n 'techie.com',\n 'technisamail.co.za',\n 'technologist.com',\n 'techpointer.com',\n 'techscout.com',\n 'techseek.com',\n 'techspot.com',\n 'teenagedirtbag.com',\n 'telebot.com',\n 'telebot.net',\n 'teleline.es',\n 'telenet.be',\n 'telerymd.com',\n 'teleserve.dynip.com',\n 'teletu.it',\n 'telinco.net',\n 'telkom.net',\n 'telpage.net',\n 'telus.net',\n 'temtulsa.net',\n 'tenchiclub.com',\n 'tenderkiss.com',\n 'tennismail.com',\n 'terra.cl',\n 'terra.com',\n 'terra.com.ar',\n 'terra.com.br',\n 'terra.es',\n 'tfanus.com.er',\n 'tfz.net',\n 'thai.com',\n 'thaimail.com',\n 'thaimail.net',\n 'the-african.com',\n 'the-airforce.com',\n 'the-aliens.com',\n 'the-american.com',\n 'the-animal.com',\n 'the-army.com',\n 'the-astronaut.com',\n 'the-beauty.com',\n 'the-big-apple.com',\n 'the-biker.com',\n 'the-boss.com',\n 'the-brazilian.com',\n 'the-canadian.com',\n 'the-canuck.com',\n 'the-captain.com',\n 'the-chinese.com',\n 'the-country.com',\n 'the-cowboy.com',\n 'the-davis-home.com',\n 'the-dutchman.com',\n 'the-eagles.com',\n 'the-englishman.com',\n 'the-fastest.net',\n 'the-fool.com',\n 'the-frenchman.com',\n 'the-galaxy.net',\n 'the-genius.com',\n 'the-gentleman.com',\n 'the-german.com',\n 'the-gremlin.com',\n 'the-hooligan.com',\n 'the-italian.com',\n 'the-japanese.com',\n 'the-lair.com',\n 'the-madman.com',\n 'the-mailinglist.com',\n 'the-marine.com',\n 'the-master.com',\n 'the-mexican.com',\n 'the-ministry.com',\n 'the-monkey.com',\n 'the-newsletter.net',\n 'the-pentagon.com',\n 'the-police.com',\n 'the-prayer.com',\n 'the-professional.com',\n 'the-quickest.com',\n 'the-russian.com',\n 'the-snake.com',\n 'the-spaceman.com',\n 'the-stock-market.com',\n 'the-student.net',\n 'the-whitehouse.net',\n 'the-wild-west.com',\n 'the18th.com',\n 'thecoolguy.com',\n 'thecriminals.com',\n 'thedoghousemail.com',\n 'thedorm.com',\n 'theend.hu',\n 'theglobe.com',\n 'thegolfcourse.com',\n 'thegooner.com',\n 'theheadoffice.com',\n 'thelanddownunder.com',\n 'themillionare.net',\n 'theoffice.net',\n 'thepokerface.com',\n 'thepostmaster.net',\n 'theraces.com',\n 'theracetrack.com',\n 'thestreetfighter.com',\n 'theteebox.com',\n 'thewatercooler.com',\n 'thewebpros.co.uk',\n 'thewizzard.com',\n 'thewizzkid.com',\n 'thezhangs.net',\n 'thirdage.com',\n 'thisgirl.com',\n 'thoic.com',\n 'thundermail.com',\n 'tidni.com',\n 'timein.net',\n 'tin.it',\n 'tiscali.at',\n 'tiscali.be',\n 'tiscali.co.uk',\n 'tiscali.it',\n 'tiscali.lu',\n 'tiscali.se',\n 'tkcity.com',\n 'toolsource.com',\n 'topchat.com',\n 'topgamers.co.uk',\n 'topletter.com',\n 'topmail.com.ar',\n 'topsurf.com',\n 'topteam.bg',\n 'torchmail.com',\n 'tot.net',\n 'totalmusic.net',\n 'toughguy.net',\n 'tpg.com.au',\n 'travel.li',\n 'trialbytrivia.com',\n 'tritium.net',\n 'trmailbox.com',\n 'tropicalstorm.com',\n 'truckers.com',\n 'truckerz.com',\n 'truckracer.com',\n 'trust-me.com',\n 'tsamail.co.za',\n 'ttml.co.in',\n 'tunisiamail.com',\n 'turkey.com',\n 'tvcablenet.be',\n 'twinstarsmail.com',\n 'tycoonmail.com',\n 'typemail.com',\n 'u2club.com',\n 'uae.ac',\n 'uaemail.com',\n 'ubbi.com',\n 'ubbi.com.br',\n 'uboot.com',\n 'uk2k.com',\n 'uk2net.com',\n 'uk7.net',\n 'uk8.net',\n 'ukbuilder.com',\n 'ukcool.com',\n 'ukdreamcast.com',\n 'ukmail.org',\n 'ukmax.com',\n 'ukr.net',\n 'uku.co.uk',\n 'ultapulta.com',\n 'ultrapostman.com',\n 'ummah.org',\n 'umpire.com',\n 'unbounded.com',\n 'unforgettable.com',\n 'uni.de',\n 'unican.es',\n 'unihome.com',\n 'universal.pt',\n 'uno.ee',\n 'uno.it',\n 'unofree.it',\n 'unomail.com',\n 'uol.com.ar',\n 'uol.com.br',\n 'uol.com.co',\n 'uol.com.mx',\n 'uol.com.ve',\n 'uole.com',\n 'uole.com.ve',\n 'uolmail.com',\n 'uomail.com',\n 'upf.org',\n 'ureach.com',\n 'urgentmail.biz',\n 'usa.com',\n 'usa.net',\n 'usaaccess.net',\n 'usanetmail.com',\n 'usermail.com',\n 'usit.net',\n 'usma.net',\n 'usmc.net',\n 'uswestmail.net',\n 'uu.net',\n 'uymail.com',\n 'uyuyuy.com',\n 'v-sexi.com',\n 'vahoo.com',\n 'varbizmail.com',\n 'vcmail.com',\n 'velnet.co.uk',\n 'velocall.com',\n 'verizon.net',\n 'verizonmail.com',\n 'veryfast.biz',\n 'veryspeedy.net',\n 'videotron.ca',\n 'violinmakers.co.uk',\n 'vip.gr',\n 'vipmail.ru',\n 'virgilio.it',\n 'virgin.net',\n 'virginmedia.com',\n 'virtualactive.com',\n 'virtualmail.com',\n 'visitmail.com',\n 'visitweb.com',\n 'visto.com',\n 'visualcities.com',\n 'vivavelocity.com',\n 'vivianhsu.net',\n 'vjmail.com',\n 'vjtimail.com',\n 'vlmail.com',\n 'vnn.vn',\n 'voila.fr',\n 'volcanomail.com',\n 'voo.be',\n 'vote-democrats.com',\n 'vote-hillary.com',\n 'vote-republicans.com',\n 'vote4gop.org',\n 'votenet.com',\n 'vr9.com',\n 'w3.to',\n 'wahoye.com',\n 'wales2000.net',\n 'wam.co.za',\n 'wanadoo.co.uk',\n 'wanadoo.es',\n 'wanadoo.fr',\n 'warmmail.com',\n 'warpmail.net',\n 'warrior.hu',\n 'waumail.com',\n 'wbdet.com',\n 'wearab.net',\n 'web-mail.com.ar',\n 'web-police.com',\n 'web.de',\n 'webave.com',\n 'webcammail.com',\n 'webcity.ca',\n 'webdream.com',\n 'webinbox.com',\n 'webindia123.com',\n 'webjump.com',\n 'webmail.bellsouth.net',\n 'webmail.co.yu',\n 'webmail.co.za',\n 'webmail.hu',\n 'webmails.com',\n 'webprogramming.com',\n 'webstable.net',\n 'webstation.com',\n 'websurfer.co.za',\n 'webtopmail.com',\n 'weedmail.com',\n 'weekmail.com',\n 'weekonline.com',\n 'wehshee.com',\n 'welsh-lady.com',\n 'whale-mail.com',\n 'whartontx.com',\n 'wheelweb.com',\n 'whipmail.com',\n 'whoever.com',\n 'whoopymail.com',\n 'wickedmail.com',\n 'wideopenwest.com',\n 'wildmail.com',\n 'windrivers.net',\n 'windstream.net',\n 'wingnutz.com',\n 'winmail.com.au',\n 'winning.com',\n 'witty.com',\n 'wiz.cc',\n 'wkbwmail.com',\n 'woh.rr.com',\n 'wolf-web.com',\n 'wombles.com',\n 'wonder-net.com',\n 'wongfaye.com',\n 'wooow.it',\n 'workmail.com',\n 'worldemail.com',\n 'worldmailer.com',\n 'worldnet.att.net',\n 'wosaddict.com',\n 'wouldilie.com',\n 'wow.com',\n 'wowgirl.com',\n 'wowmail.com',\n 'wowway.com',\n 'wp.pl',\n 'wptamail.com',\n 'wrestlingpages.com',\n 'wrexham.net',\n 'writeme.com',\n 'writemeback.com',\n 'wrongmail.com',\n 'wtvhmail.com',\n 'wwdg.com',\n 'www.com',\n 'www2000.net',\n 'wx88.net',\n 'wxs.net',\n 'wyrm.supernews.com',\n 'x-mail.net',\n 'x-networks.net',\n 'x5g.com',\n 'xmastime.com',\n 'xmsg.com',\n 'xoom.com',\n 'xoommail.com',\n 'xpressmail.zzn.com',\n 'xsmail.com',\n 'xuno.com',\n 'xzapmail.com',\n 'ya.ru',\n 'yada-yada.com',\n 'yaho.com',\n 'yahoo.ca',\n 'yahoo.co.id',\n 'yahoo.co.in',\n 'yahoo.co.jp',\n 'yahoo.co.kr',\n 'yahoo.co.nz',\n 'yahoo.co.uk',\n 'yahoo.com',\n 'yahoo.com.ar',\n 'yahoo.com.au',\n 'yahoo.com.br',\n 'yahoo.com.cn',\n 'yahoo.com.hk',\n 'yahoo.com.is',\n 'yahoo.com.mx',\n 'yahoo.com.ph',\n 'yahoo.com.ru',\n 'yahoo.com.sg',\n 'yahoo.de',\n 'yahoo.dk',\n 'yahoo.es',\n 'yahoo.fr',\n 'yahoo.ie',\n 'yahoo.in',\n 'yahoo.it',\n 'yahoo.jp',\n 'yahoo.ru',\n 'yahoo.se',\n 'yahoofs.com',\n 'yalla.com',\n 'yalla.com.lb',\n 'yalook.com',\n 'yam.com',\n 'yandex.com',\n 'yandex.ru',\n 'yapost.com',\n 'yawmail.com',\n 'yclub.com',\n 'yebox.com',\n 'yehaa.com',\n 'yehey.com',\n 'yemenmail.com',\n 'yepmail.net',\n 'yesbox.net',\n 'ygm.com',\n 'yifan.net',\n 'ymail.com',\n 'ynnmail.com',\n 'yogotemail.com',\n 'yopolis.com',\n 'youareadork.com',\n 'youpy.com',\n 'your-house.com',\n 'yourinbox.com',\n 'yourlover.net',\n 'yourname.ddns.org',\n 'yourname.freeservers.com',\n 'yournightmare.com',\n 'yours.com',\n 'yourssincerely.com',\n 'yoursubdomain.findhere.com',\n 'yoursubdomain.zzn.com',\n 'yourteacher.net',\n 'yourwap.com',\n 'youvegotmail.net',\n 'yuuhuu.net',\n 'yyhmail.com',\n 'zahadum.com',\n 'zcities.com',\n 'zdnetmail.com',\n 'zeeks.com',\n 'zeepost.nl',\n 'zensearch.net',\n 'zhaowei.net',\n 'zionweb.org',\n 'zip.net',\n 'zipido.com',\n 'ziplink.net',\n 'ziplip.com',\n 'zipmail.com',\n 'zipmail.com.br',\n 'zipmax.com',\n 'zmail.ru',\n 'zoho.com',\n 'zonnet.nl',\n 'zoominternet.net',\n 'zubee.com',\n 'zuvio.com',\n 'zuzzurello.com',\n 'zwallet.com',\n 'zybermail.com',\n 'zydecofan.com',\n 'zzn.com',\n 'zzom.co.uk',\n];\n","import { domains } from './domains';\n\nexport const doA11yValidation = (v, field, formValidationSent) => {\n const error = doValidateField(field, v);\n if (JSON.stringify(field.validations) !== '{}') {\n if ((v?.length >= 1 || formValidationSent) && error?.fieldId === field.id) return 'true'\n else if (v?.length >= 1) return 'false'\n else return ''\n }\n}\n\nexport const doValidateField = (field, value) => {\n const isRequired = field.validations && field.validations.required;\n const minLength = field.validations && field.validations.minLength;\n const maxLength = field.validations && field.validations.maxLength;\n const hasRegex = field?.validations?.regex?.pattern ? true : false;\n const integer = field.dataType === 'integer';\n const decimal = field.dataType === 'decimal';\n const isBusinessEmail = field.id === 'businessEmail';\n\n if (isRequired && value?.length <= 0) {\n const errorMessage = isRequired?.message?.['en-GB'] || `${field.name?.['en-GB']} is required`;\n return { fieldId: field.id, groupId: field.groupId, message: errorMessage };\n }\n if (minLength && minLength.value > value.length) {\n const errorMessage = minLength.message\n ? minLength.message['en-GB']\n : `Minimum characters ${minLength.value}`;\n return { fieldId: field.id, groupId: field.groupId, message: errorMessage };\n }\n if (maxLength && maxLength.value < value.length) {\n const errorMessage =\n maxLength.message && maxLength.message['en-GB']\n ? maxLength.message['en-GB']\n : `Maximum characters ${maxLength.value}`;\n return { fieldId: field.id, groupId: field.groupId, message: errorMessage };\n }\n /** Check Regex and Business Emails */\n if (hasRegex && value.length >= 1) {\n const r = field.validations.regex;\n const msg = r?.message?.['en-GB'] || `${field.name['en-GB']} is invalid`;\n if (isValidRegex(field, value) && isBusinessEmail) {\n if (!isBusinessEmailValid(field, value)) {\n return {\n fieldId: field.id,\n groupId: field.groupId,\n message: 'You must enter a business email address.',\n };\n }\n } else if (!isValidRegex(field, value)) {\n return {\n fieldId: field.id,\n groupId: field.groupId,\n message: msg,\n };\n }\n }\n if (integer) {\n const isInteger = value % 1 === 0;\n if (!isInteger) {\n const errorMessage = `${value} is not an ${field.dataType}`;\n return {\n fieldId: field.id,\n groupId: field.groupId,\n message: errorMessage,\n };\n }\n }\n if (decimal) {\n const isDecimal = value % 1 !== 0;\n if (!isDecimal) {\n const errorMessage = `${value} is not an ${field.dataType}`;\n return {\n fieldId: field.id,\n groupId: field.groupId,\n message: errorMessage,\n };\n }\n }\n};\n\nconst isValidRegex = (field, value) => {\n const regex = field.validations.regex.pattern;\n const regexPattern = RegExp(regex);\n if (!regexPattern.test(value)) return false;\n else return true;\n};\n\nconst isBusinessEmailValid = (field, value) => {\n const domain = value.split('@').pop();\n if (!domains.includes(domain)) return true;\n else return false;\n};\n","export const doCreateMessage = (\n type,\n minLength,\n maxLength,\n currentLength,\n defaultLanguage\n) => {\n if (!type) return null;\n switch (type) {\n case 'min': {\n if (!minLength) return;\n const minLengthVal = minLength && minLength.value;\n const errorMessage =\n minLength && minLength.message && minLength.message[defaultLanguage];\n const minText = `Minimum of ${minLengthVal.toString()} characters`;\n if (errorMessage) {\n return errorMessage;\n } else {\n return minText;\n }\n }\n case 'max': {\n if (!maxLength) return;\n const maxLengthVal = maxLength && maxLength.value;\n const errorMessage =\n maxLength && maxLength.message && maxLength.message[defaultLanguage];\n const maxText = `Maximum of ${maxLengthVal.toString()} characters`;\n if (errorMessage) {\n return errorMessage;\n } else {\n return maxText;\n }\n }\n case 'between': {\n if (!maxLength || !minLength) return;\n const minLengthVal = minLength && minLength.value;\n const maxLengthVal = maxLength && maxLength.value;\n const errorMessage =\n minLength && minLength.message && minLength.message[defaultLanguage];\n const rangeText = `Between ${minLengthVal.toString()}-${maxLengthVal.toString()} characters)`;\n if (errorMessage) {\n return errorMessage;\n } else if (currentLength < minLengthVal) {\n return `${(minLengthVal - currentLength).toString()} character${\n minLengthVal > 1 ? 's' : ''\n } required ${rangeText}`;\n } else if (currentLength > maxLengthVal) {\n return `${(currentLength - maxLengthVal).toString()} character${\n currentLength - maxLengthVal > 1 ? 's' : ''\n } over ${rangeText}`;\n } else if (currentLength) {\n return `${(\n maxLengthVal - currentLength\n ).toString()} characters remaining ${rangeText}`;\n } else {\n return rangeText;\n }\n }\n default:\n return null;\n }\n};\n\n\nexport const getFieldType = field => {\n if (!field) return null;\n if (\n field.dataType === 'string' &&\n field.editor &&\n field.editor.id === 'multiline'\n ) {\n return 'textarea';\n } else if (\n field.dataType === 'string' &&\n field.editor &&\n field.editor.id === 'list-dropdown'\n ) {\n return 'dropdown';\n } else if ((field?.editor?.properties?.readOnly) || field?.groupId === 'private' || field?.groupId === 'settings') {\n return 'hidden';\n } else if (field.dataType === 'stringArray' || field.dataType === 'boolean') {\n return 'checkbox';\n } else if (\n field.dataType === 'string' &&\n field.validations &&\n field.validations.allowedValues\n ) {\n return 'radio';\n } else if (field.dataType === 'integer') {\n return 'number';\n } else if (field.dataType === 'dateTime') {\n return 'date';\n } else if (field.dataFormat === 'daterange') {\n return 'dateRange';\n } else if (field.dataFormat === 'entry') {\n return 'entryPicker';\n } else {\n return 'textfield';\n }\n};\n","import {\n takeEvery,\n put,\n select,\n takeLatest,\n call,\n all,\n} from 'redux-saga/effects';\n\nimport {\n SET_FORM_DATA,\n SET_FORM_ID,\n SET_SUBMITTING_FORM,\n SET_FIELD_ERROR,\n SUBMIT_FORM,\n SUBMIT_FORM_SUCCESS,\n SET_SUCCESS_MESSAGE,\n SUBMIT_FORM_ERROR,\n SUBMIT_FORM_FOR_VALIDATION,\n VALIDATE_FIELD,\n SET_CURRENT_PAGE,\n PAGE_FORWARD,\n PAGE_BACK,\n SET_FORM_ENTRIES,\n SET_DEFAULT_FIELD_VALUE,\n DO_VALIDATE_FORM,\n} from './types';\n\nimport {\n selectForms,\n makeSelectFormFields,\n makeSelectFormFieldErrors,\n makeSelectFormPostData,\n} from './selectors';\n\nimport { getFormSchema, postForm, getEntries } from '../utils/api-utils';\nimport { doValidateField } from '../utils/validate-utils';\nimport { getFieldType } from '../utils/transform-utils';\nimport { selectors } from '@zengenti/contensis-react-base/routing';\n\nexport const sagas = [\n takeEvery(SUBMIT_FORM_SUCCESS, onFormSuccess),\n takeEvery(SUBMIT_FORM_FOR_VALIDATION, doValidateForm),\n takeEvery(SUBMIT_FORM, onSubmitForm),\n takeEvery(SET_FORM_ID, doFetchForm),\n takeLatest(VALIDATE_FIELD, onValidateField),\n takeEvery(PAGE_FORWARD, doTogglePage),\n takeEvery(PAGE_BACK, doTogglePage),\n takeEvery(SET_FORM_DATA, getEntryPickerData),\n takeLatest(SET_FORM_DATA, setDefaultValueFields),\n];\n\nfunction* doValidateForm(action) {\n const { formId } = action;\n yield onValidateAllFields(formId);\n yield put({\n type: SUBMIT_FORM,\n formId,\n });\n}\nfunction* onValidateField(action) {\n const { formId, id, value } = action;\n if (value?.length >= 1) yield call(onValidateSingleField, formId, id, value);\n}\nfunction* validateGroupfields(formId, groupId) {\n const state = yield select();\n\n const selectPostData = makeSelectFormPostData(formId);\n const postData = selectPostData(state)\n\n const selectFormFields = makeSelectFormFields(formId);\n const fields = selectFormFields(state);\n\n const groupFields = fields.filter(f => f.groupid == groupId);\n let newErrors = [];\n groupFields.forEach(field => {\n let val = '';\n if (postData[field.id]) {\n val = postData[field.id];\n }\n const err = doValidateField(field, val);\n if (err) newErrors.push(err);\n });\n yield put({ type: SET_FIELD_ERROR, formId: formId, value: newErrors });\n}\nfunction* onValidateAllFields(formId) {\n const state = yield select();\n const selectPostData = makeSelectFormPostData(formId);\n const postData = selectPostData(state)\n const selectFormFields = makeSelectFormFields(formId);\n const fields = selectFormFields(state);\n\n let newErrors = [];\n fields.forEach(field => {\n let val = '';\n if (postData[field.id]) {\n val = postData[field.id];\n }\n const err = doValidateField(field, val);\n if (err) newErrors.push(err);\n });\n yield put({ type: SET_FIELD_ERROR, formId: formId, value: newErrors });\n}\n\nfunction* onValidateSingleField(formId, fieldId, value) {\n const state = yield select();\n const selectFormFields = makeSelectFormFields(formId);\n const fields = selectFormFields(state);\n\n const selectFormFieldErrors = makeSelectFormFieldErrors(formId)\n const errors = selectFormFieldErrors(state);\n\n const fieldData = fields.find(f => f.id == fieldId);\n\n const newErrors = [];\n //loop through current errors to remove any of the item we currently edit\n errors.forEach(error => {\n if (error.fieldId !== fieldId) {\n //push any existing errors to new array\n newErrors.push(error);\n }\n });\n const err = doValidateField(fieldData, value);\n if (err) newErrors.push(err);\n yield put({ type: SET_FIELD_ERROR, formId: formId, value: newErrors });\n}\nfunction* doTogglePage(action) {\n const { formId, pageIndex } = action;\n const state = yield select();\n\n const selectFormGroups = makeSelectFormGroup(formId);\n const formGroups = selectFormGroups(state);\n\n if (action.type === PAGE_FORWARD) {\n yield validateGroupfields(formId, formGroups[pageIndex].id);\n }\n yield put({\n type: SET_CURRENT_PAGE,\n formId: formId,\n pageId: formGroups[pageIndex].id,\n pageCount: formGroups.length,\n pageIndex: pageIndex,\n });\n}\nfunction* doFetchForm(action) {\n const formId = action.formId;\n const schema = yield getFormSchema(formId);\n\n const groups = schema?.groups?.filter(group => (group.id !== 'private' && group.id !== 'settings'));\n\n if (formId && schema) {\n if (schema?.groups?.length > 0) {\n yield put({\n type: SET_CURRENT_PAGE,\n formId: formId,\n pageId: groups[0].id,\n pageIndex: 0,\n pageCount: groups.length,\n });\n }\n\n const submitButtonText = schema.fields.find(f => f.id === 'submitButtonText');\n const fields = schema?.fields.map(field => { \n return {\n ...field,\n type: getFieldType(field)\n }\n })\n \n yield put({\n type: SET_FORM_DATA,\n formId: formId,\n fields,\n groups: groups,\n defaultLanguage: schema.defaultLanguage,\n settings: {\n submitButtonText: submitButtonText?.default?.['en-GB'],\n }\n });\n }\n}\nfunction* onFormSuccess(action) {\n const state = yield select();\n const selectFormFields = makeSelectFormFields(action.formId);\n const fields = selectFormFields(state);\n const redirect = fields.find(f => f.id === 'formSettingsRedirect');\n const message = fields.find(f => f.id === 'formSettingsMessage');\n if (redirect?.default) {\n window.location.href = redirect.default['en-GB'];\n }\n if (message?.default) {\n yield put({\n type: SET_SUCCESS_MESSAGE,\n message: message.default['en-GB'],\n formId: action.formId,\n });\n }\n}\n\nfunction* onSubmitForm(action) {\n const { formId } = action || {};\n const state = yield select();\n const selectFormFieldErrors = makeSelectFormFieldErrors(formId)\n const errors = selectFormFieldErrors(state);\n\n const canSubmit = errors?.length === 0;\n if (canSubmit) {\n yield put({\n type: SET_SUBMITTING_FORM,\n isSubmitting: true,\n formId: action.formId,\n });\n const forms = yield select(selectForms);\n const rawData = forms[action.formId];\n const formObj = {\n contentType: action.formId,\n formPost: rawData.data,\n };\n const formResObj = yield postForm(formObj);\n if (formResObj?.sys?.id) {\n yield put({\n type: SUBMIT_FORM_SUCCESS,\n formId: action.formId,\n });\n } else {\n yield put({\n type: SUBMIT_FORM_ERROR,\n formId: action.formId,\n });\n }\n }\n}\n\nfunction* setDefaultValueFields(action) {\n const { formId, fields, defaultLanguage } = action;\n const entryId = yield select(selectors.selectRouteEntryEntryId);\n let fieldObj = {};\n fields.forEach(field => {\n if (field.dataType == 'string' && field.default) {\n const val = field.default[defaultLanguage];\n if (val) {\n fieldObj[field.id] = val;\n }\n }\n if (field.id == 'sourceEntry') {\n const val = entryId;\n if (val) {\n fieldObj[field.id] = val;\n }\n }\n });\n yield put({\n type: SET_DEFAULT_FIELD_VALUE,\n formId: formId,\n value: fieldObj,\n });\n}\nfunction* getEntryPickerData(action) {\n const { formId, fields } = action;\n const entriesToGet = fields.filter(f => f.dataFormat == 'entry');\n let entriesList = [];\n if (entriesToGet) {\n entriesList = yield all(\n entriesToGet.map(entry => {\n const entriesObj = {\n contentType: entry.validations.allowedContentTypes.contentTypes,\n versionStatus: 'published',\n language: 'en-GB',\n pageSize: '10',\n };\n return call(getEntries, entriesObj, entry.id);\n })\n );\n yield put({\n type: SET_FORM_ENTRIES,\n formId: formId,\n entries: entriesList,\n });\n }\n}\n","import {\n SET_FORM_ID,\n SET_FIELD_VALUE,\n SUBMIT_FORM_FOR_VALIDATION,\n VALIDATE_FIELD,\n PAGE_FORWARD,\n PAGE_BACK,\n SET_DATE_RANGE_VALUES,\n SET_CHECKBOX_VALUE,\n} from './types';\n\nconst action = (type, payload = {}) => ({ type, ...payload });\n\nexport const onSubmit = formId =>\n action(SUBMIT_FORM_FOR_VALIDATION, { formId });\nexport const setFormId = formId => action(SET_FORM_ID, { formId });\nexport const setValue = (formId, id, value) =>\n action(SET_FIELD_VALUE, { formId, id, value });\nexport const setCheckboxValue = (formId, id, value, isChecked) =>\n action(SET_CHECKBOX_VALUE, { formId, id, value, isChecked });\nexport const setDateRangeValues = (formId, id, dateType, value) =>\n action(SET_DATE_RANGE_VALUES, { formId, id, dateType, value });\nexport const onValidateField = (formId, id, value) =>\n action(VALIDATE_FIELD, { formId, id, value });\nexport const doTogglePageForward = (formId, pageIndex) =>\n action(PAGE_FORWARD, { formId, pageIndex });\nexport const doTogglePageBack = (formId, pageIndex) =>\n action(PAGE_BACK, { formId, pageIndex });\n\n\nexport const actions = {\n onSubmit,\n setFormId,\n setValue,\n setCheckboxValue,\n setDateRangeValues,\n onValidateField,\n doTogglePageForward,\n doTogglePageBack,\n }\n","import React, { createContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { ThemeProvider as BaseThemeProvider } from 'styled-components';\n\nconst ThemeContext = createContext();\n\nconst ThemeProvider = ({ children, theme }) => {\n return (\n <ThemeContext.Provider value=\"\">\n <BaseThemeProvider theme={theme}>{children}</BaseThemeProvider>\n </ThemeContext.Provider>\n );\n};\n\nThemeProvider.propTypes = {\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node,\n ]),\n theme: PropTypes.object,\n};\n\nexport { ThemeProvider };\n","const colors = {\n white: '#fff',\n black: '#000',\n dark_grey_lighter: '#757575',\n dark_grey_lightest: '#595959',\n dark_grey_light: '#444',\n dark_grey_dark: '#333',\n dark_grey_darker: '#262626',\n dark_grey_darkest: '#1F1F1F',\n light_grey_lightest: '#FAFAFA',\n light_grey_lighter: '#FDFDFD',\n light_grey_light: '#F0F0F0',\n light_grey_dark: '#DBDBDB',\n light_grey_darker: '#CCCCCC',\n light_grey_darkest: '#949494',\n green_lightest: '#D5FCE9',\n green_lighter: '#A3F2CD',\n green_light: '#74D8A8',\n green_dark: '#0FCE72',\n green_darker: '#008A48',\n green_darkest: '#008545',\n red_lightest: '#F9D7D7',\n red_lighter: '#F4B5B5',\n red_light: '#F67979',\n red_dark: '#d42d2d',\n red_darker: '#ca2121',\n red_darkest: '#B71A1A',\n}\n\nexport default colors;\n","import colors from './colors';\n\nexport const defaultTheme = { colors };\n","import styled, { css } from 'styled-components';\n\nconst FormStyled = styled.form`\n ${({ theme, useDefaultTheme }) => {\n return css`\n ${useDefaultTheme &&\n css`\n > div:not(:first-child) {\n margin-top: 16px;\n }\n padding: 0 16px;\n .success-message {\n font-size: 18px;\n margin: 0;\n }\n .visuallyHidden {\n position: absolute;\n left: -10000px;\n top: auto;\n width: 1px;\n height: 1px;\n overflow: hidden;\n }\n .loading {\n display: block;\n margin: 24px auto;\n }\n label {\n display: inline-block;\n .isRequired {\n color: ${theme.colors.red_darker};\n }\n }\n input,\n textarea,\n select {\n display: block;\n font-family: inherit;\n background-color: ${theme.colors.white};\n border-radius: 3px;\n border: 1px solid ${theme.colors.light_grey_darkest};\n height: 40px;\n padding: 8px;\n margin-top: 4px;\n width: 100%;\n }\n input:-webkit-autofill,\n input:-webkit-autofill:hover, \n input:-webkit-autofill:focus, \n input:-webkit-autofill:active{\n -webkit-box-shadow: 0 0 0 30px ${theme.colors.white} inset;\n }\n textarea {\n height: 200px;\n resize: none;\n }\n [aria-invalid='false']{\n background: ${theme.colors.green_lightest};\n border: 1px solid ${theme.colors.green_darker};\n &:-webkit-autofill,\n &:-webkit-autofill:hover, \n &:-webkit-autofill:focus, \n &:-webkit-autofill:active{\n -webkit-box-shadow: 0 0 0 30px${theme.colors.green_lightest} inset;\n }\n }\n [aria-invalid='true']{\n background: ${theme.colors.red_lightest};\n border: 1px solid ${theme.colors.red_darker};\n &:-webkit-autofill,\n &:-webkit-autofill:hover, \n &:-webkit-autofill:focus, \n &:-webkit-autofill:active{\n -webkit-box-shadow: 0 0 0 30px${theme.colors.red_lightest} inset;\n }\n }\n input ~ .svg {\n position: absolute;\n right: 8px;\n top: 50%;\n transform: translateY(-50%);\n }\n textarea ~ .svg {\n position: absolute;\n right: 8px;\n top: 8px;\n }\n `}\n `;\n }};\n`;\n\nexport default FormStyled;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst Label = ({ className, label, id, isRequired, isHidden }) => {\n return (\n <label\n className={`${className} ${isHidden ? 'visuallyHidden' : ''}`}\n htmlFor={id}\n >\n {label}\n {isRequired && <span className=\"isRequired\">*</span>}\n {isRequired && <span className=\"visuallyHidden\"> (required)</span>}\n </label>\n );\n};\n\nLabel.propTypes = {\n className: PropTypes.string,\n label: PropTypes.string,\n id: PropTypes.string,\n isRequired: PropTypes.bool,\n isHidden: PropTypes.bool,\n};\n\nexport default Label;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport styled, { css } from 'styled-components';\nimport { doCreateMessage } from 'zengenti-forms-package/utils/transform-utils';\n\nconst CharacterLimitStyled = styled.div`\n ${({ theme, useDefaultTheme }) => {\n return css`\n display: block;\n ${useDefaultTheme &&\n css`\n font-size: 14px;\n color: ${theme.colors.neutrals.empress_gray};\n font-weight: 400;\n line-height: 24px;\n text-align: right;\n max-width: 320px;\n width: 100%;\n `}\n `;\n }};\n`;\n\nexport const CharacterLimit = ({\n className,\n value,\n validations,\n defaultLanguage,\n useDefaultTheme,\n}) => {\n if (!validations) return null;\n let valueAsString = typeof value === 'number' ? value.toString() : value;\n const currentLength =\n valueAsString && valueAsString.length ? valueAsString.length : 0;\n const { minLength, maxLength } = validations;\n const hasMaxLength = maxLength && !minLength;\n const hasMinLength = minLength && !maxLength;\n const hasInBetween = minLength && maxLength;\n const type = hasMinLength\n ? 'min'\n : hasMaxLength\n ? 'max'\n : hasInBetween\n ? 'between'\n : null;\n if (!type) return null;\n return (\n <CharacterLimitStyled\n className={className}\n useDefaultTheme={useDefaultTheme}\n >\n {doCreateMessage(\n type,\n minLength,\n maxLength,\n currentLength,\n defaultLanguage\n )}\n </CharacterLimitStyled>\n );\n};\n\nCharacterLimit.propTypes = {\n validations: PropTypes.object,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n className: PropTypes.string,\n defaultLanguage: PropTypes.string,\n useDefaultTheme: PropTypes.bool,\n};\n","import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { useSelector } from 'react-redux'\nimport styled, { css } from 'styled-components';\nimport { doA11yValidation } from 'zengenti-forms-package/utils/validate-utils';\nimport Label from '../label/label';\nimport { makeSelectFormValidationSent } from 'zengenti-forms-package/redux/selectors';\nimport { CharacterLimit } from 'zengenti-forms-package/components/charaterlimit'\n\nconst TextfieldStyled = styled.div`\n ${({ isHidden }) => {\n return css`\n display: ${isHidden ? 'none' : 'block'};\n `;\n }};\n`;\n\nconst Textfield = ({\n className,\n field,\n formId,\n id,\n label,\n type,\n setValue,\n onValidateField,\n validations,\n defaultValue,\n defaultLanguage,\n placeholder,\n isHidden,\n useDefaultTheme,\n}) => {\n const [hasCharLimit, setCharLimit] = useState(false);\n const isRequired = validations && validations.required ? true : false;\n const placeholderText =\n placeholder &&\n placeholder.properties &&\n placeholder.properties.placeholderText &&\n placeholder.properties.placeholderText[defaultLanguage];\n\n\n const defaultValueText =\n defaultValue && defaultValue[defaultLanguage]\n ? defaultValue[defaultLanguage]\n : defaultValue;\n \n \n const [a11yInvalid, setA11yInvalid] = useState('');\n const [_, setTextfieldValue] = useState(defaultValueText || ''); \n const selectFormValidationSent = makeSelectFormValidationSent(formId);\n const formValidationSent = useSelector(selectFormValidationSent);\n useEffect(() => {\n if (formValidationSent) setA11yInvalid(doA11yValidation(_, field, true));\n }, [formValidationSent])\n \n return (\n <TextfieldStyled className={className} isHidden={isHidden}>\n <Label\n id={id}\n label={label}\n isRequired={isRequired}\n className=\"text-field__label\"\n />\n {hasCharLimit && (\n <CharacterLimit\n value={defaultValue}\n validations={validations}\n defaultLanguage={defaultLanguage}\n useDefaultTheme={useDefaultTheme}\n />\n )}\n <div className=\"text-field__input--wrapper\" style={{ position: 'relative'}}>\n <input\n className='text-field__input'\n type={type}\n defaultValue={defaultValueText}\n placeholder={placeholderText}\n aria-invalid={a11yInvalid}\n id={id}\n name={id}\n onChange={e => {\n setTextfieldValue(e.target.value);\n setValue(formId, id, e.target.value);\n }}\n onBlur={e => {\n onValidateField(formId, id, e.target.value);\n setCharLimit(false);\n setA11yInvalid(doA11yValidation(e.target.value, field, formValidationSent))\n }}\n onFocus={() => {\n setCharLimit(true);\n }}\n />\n {a11yInvalid == 'true' && (\n <svg className=\"svg\" xmlns=\"http://www.w3.org/2000/svg\" focusable=\"false\" aria-hidden=\"true\" role=\"presentation\" width=\"16\" height=\"16\" fill=\"none\"><path fill=\"#333\" d=\"M12.2 3.807a.664.664 0 0 0-.94 0L8 7.06 4.74 3.8a.665.665 0 0 0-.94.94L7.06 8 3.8 11.26a.664.664 0 1 0 .94.94L8 8.94l3.26 3.26a.665.665 0 0 0 .94-.94L8.94 8l3.26-3.26a.668.668 0 0 0 0-.933Z\"/></svg>\n )}\n {a11yInvalid == 'false' && (\n <svg className=\"svg\" xmlns=\"http://www.w3.org/2000/svg\" focusable=\"false\" aria-hidden=\"true\" role=\"presentation\" width=\"16\" height=\"16\" fill=\"none\"><path fill=\"#333\" d=\"m2 8 4.418 4.667L14 4.659l-1.246-1.326-6.336 6.692-3.18-3.332L2 8Z\"/></svg>\n )}\n </div>\n </TextfieldStyled>\n );\n};\n\nTextfield.propTypes = {\n className: PropTypes.string,\n field: PropTypes.any,\n formId: PropTypes.string,\n id: PropTypes.string,\n label: PropTypes.string,\n type: PropTypes.string,\n setValue: PropTypes.func,\n onValidateField: PropTypes.func,\n validations: PropTypes.object,\n defaultValue: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n defaultLanguage: PropTypes.string,\n placeholder: PropTypes.object,\n isHidden: PropTypes.bool,\n errors: PropTypes.array,\n useDefaultTheme: PropTypes.bool,\n};\n\nexport default Textfield;\n","import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport Label from '../label/label';\nimport { doA11yValidation } from 'zengenti-forms-package/utils/validate-utils';\nimport { makeSelectFormValidationSent } from 'zengenti-forms-package/redux/selectors';\nimport { useSelector } from 'react-redux'\nimport { CharacterLimit } from 'zengenti-forms-package/components/charaterlimit';\n\nconst Textarea = ({\n className,\n field,\n formId,\n id,\n label,\n type,\n setValue,\n validations,\n defaultValue,\n defaultLanguage,\n placeholder,\n onValidateField,\n useDefaultTheme,\n}) => {\n const [showCharLimit, setShowCharLimit] = useState(false);\n const isRequired = validations && validations.required ? true : false;\n const placeholderText =\n placeholder &&\n placeholder.properties &&\n placeholder.properties.placeholderText &&\n placeholder.properties.placeholderText[defaultLanguage];\n const defaultValueText = defaultValue ? defaultValue[defaultLanguage] : null;\n\n const [a11yInvalid, setA11yInvalid] = useState('');\n const [_, setTextareaValue] = useState(defaultValueText || ''); \n const selectFormValidationSent = makeSelectFormValidationSent(formId);\n const formValidationSent = useSelector(selectFormValidationSent);\n useEffect(() => {\n if (formValidationSent) setA11yInvalid(doA11yValidation(_, field, true));\n }, [formValidationSent])\n\n return (\n <div className={className}>\n <Label\n id={id}\n label={label}\n isRequired={isRequired}\n className=\"text-area__label\"\n />\n {showCharLimit && (\n <CharacterLimit\n value={defaultValue}\n validations={validations}\n defaultLanguage={defaultLanguage}\n useDefaultTheme={useDefaultTheme}\n />\n )}\n <div className=\"text-area__input--wrapper\" style={{ position: 'relative'}}>\n <textarea\n className='text-area__input'\n type={type}\n id={id}\n defaultValue={defaultValueText}\n placeholder={placeholderText}\n aria-invalid={a11yInvalid}\n onChange={e => {\n setTextareaValue(e.target.value)\n setValue(formId, id, e.target.value);\n }}\n onBlur={e => {\n onValidateField(formId, id, e.target.value);\n setShowCharLimit(false);\n setA11yInvalid(doA11yValidation(e.target.value, field, formValidationSent))\n }}\n onFocus={() => { \n setShowCharLimit(true);\n }}\n />\n {a11yInvalid == 'true' && (\n <svg className=\"svg\" xmlns=\"http://www.w3.org/2000/svg\" focusable=\"false\" aria-hidden=\"true\" role=\"presentation\" width=\"16\" height=\"16\" fill=\"none\"><path fill=\"#333\" d=\"M12.2 3.807a.664.664 0 0 0-.94 0L8 7.06 4.74 3.8a.665.665 0 0 0-.94.94L7.06 8 3.8 11.26a.664.664 0 1 0 .94.94L8 8.94l3.26 3.26a.665.665 0 0 0 .94-.94L8.94 8l3.26-3.26a.668.668 0 0 0 0-.933Z\"/></svg>\n )}\n {a11yInvalid == 'false' && (\n <svg className=\"svg\" xmlns=\"http://www.w3.org/2000/svg\" focusable=\"false\" aria-hidden=\"true\" role=\"presentation\" width=\"16\" height=\"16\" fill=\"none\"><path fill=\"#333\" d=\"m2 8 4.418 4.667L14 4.659l-1.246-1.326-6.336 6.692-3.18-3.332L2 8Z\"/></svg>\n )}\n </div>\n </div>\n );\n};\n\nTextarea.propTypes = {\n className: PropTypes.string,\n field: PropTypes.any,\n formId: PropTypes.string,\n id: PropTypes.string,\n label: PropTypes.string,\n type: PropTypes.string,\n setValue: PropTypes.func,\n validations: PropTypes.object,\n defaultValue: PropTypes.object,\n defaultLanguage: PropTypes.string,\n placeholder: PropTypes.object,\n onValidateField: PropTypes.func,\n useDefaultTheme: PropTypes.bool,\n errors: PropTypes.array,\n};\n\nexport default Textarea;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Textfield from '../textfield/textfield';\n\nconst HiddenField = ({\n className,\n id,\n label,\n type,\n defaultValue,\n defaultLanguage,\n placeholder,\n}) => {\n return (\n <Textfield\n type={type}\n label={label}\n id={id}\n defaultValue={defaultValue}\n defaultLanguage={defaultLanguage}\n placeholder={placeholder}\n className={className}\n isHidden={true}\n />\n );\n};\n\nHiddenField.propTypes = {\n className: PropTypes.string,\n id: PropTypes.string,\n label: PropTypes.string,\n type: PropTypes.string,\n defaultValue: PropTypes.object,\n defaultLanguage: PropTypes.string,\n placeholder: PropTypes.object,\n};\n\nexport default HiddenField;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Label from '../label/label';\n\nconst Dropdown = ({\n className,\n formId,\n id,\n validations,\n defaultValue,\n defaultLanguage,\n label,\n setValue,\n}) => {\n if (!validations) return null;\n const isRequired = validations && validations.required ? true : false;\n const ddValues =\n validations &&\n validations.allowedValues &&\n validations.allowedValues.values;\n\n if (!ddValues || ddValues.length < 1) return null;\n return (\n <div className=\"dropdown-container\">\n <Label\n id={id}\n label={label}\n isRequired={isRequired}\n className=\"label-dropdown\"\n />\n <select\n name={id}\n id={id}\n className={`${className ? className : ''} select-dropdown`}\n defaultValue={defaultValue}\n onBlur={e => {\n setValue(formId, id, e.target.value);\n }}\n >\n {ddValues.map((val, idx) => {\n return (\n <option\n key={`${val[defaultLanguage]}-${idx}`}\n value={val[defaultLanguage]}\n className=\"option-dropdown\"\n >\n {val[defaultLanguage]}\n </option>\n );\n })}\n </select>\n </div>\n );\n};\n\nDropdown.propTypes = {\n className: PropTypes.string,\n formId: PropTypes.string,\n setValue: PropTypes.func,\n id: PropTypes.string,\n validations: PropTypes.object,\n defaultValue: PropTypes.string,\n label: PropTypes.string,\n defaultLanguage: PropTypes.string,\n};\n\nexport default Dropdown;\n","import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport styled, { css } from 'styled-components';\nimport Label from '../label/label';\n\nconst CheckboxStyled = styled.div`\n ${({ useDefaultTheme }) => {\n return css`\n ${useDefaultTheme &&\n css`\n .checkbox-wrapper {\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-start;\n align-items: center;\n input {\n height: auto;\n width: auto;\n margin: 0 4px 0 0;\n }\n label {\n display: inline-block;\n }\n }\n `}\n `;\n }};\n`;\n\nconst Checkbox = ({\n className,\n formId,\n setCheckboxValue,\n id,\n type,\n label,\n validations,\n defaultValue,\n name,\n defaultLanguage,\n useDefaultTheme,\n}) => {\n // NF change rules of hooks\n let isDefaultChecked = defaultValue && defaultValue[defaultLanguage];\n const [isChecked, setIsChecked] = useState(isDefaultChecked || '');\n\n switch (type) {\n case 'multiple': {\n if (!validations) return null;\n const isRequired = validations && validations.required ? true : false;\n const cbValues =\n validations &&\n validations.allowedValues &&\n validations.allowedValues.values;\n\n const _handleChange = (value, isChecked) => {\n setCheckboxValue(formId, id, value, isChecked);\n };\n\n if (!cbValues || cbValues.length < 1) return null;\n return (\n <CheckboxStyled\n className={`checkbox-container`}\n useDefaultTheme={useDefaultTheme}\n >\n <Label\n id={id}\n label={label}\n isRequired={isRequired}\n className=\"label-checkbox-container\"\n />\n {cbValues.map((val, idx) => {\n return (\n <span key={idx} className=\"checkbox-wrapper\">\n <input\n type=\"checkbox\"\n id={`checkbox-${idx}`}\n name={`checkbox-${idx}`}\n value={val[defaultLanguage]}\n className={`${className ? className : ''} input-checkbox`}\n onChange={e =>\n _handleChange(e.target.value, e.target.checked)\n }\n />\n <Label\n id={`checkbox-${idx}`}\n label={val[defaultLanguage]}\n className=\"label-checkbox\"\n />\n </span>\n );\n })}\n </CheckboxStyled>\n );\n }\n case 'single': {\n const _handleChange = isChecked => {\n setIsChecked(isChecked);\n setCheckboxValue(formId, id, isChecked);\n };\n return (\n <CheckboxStyled\n className={`checkbox-container`}\n useDefaultTheme={useDefaultTheme}\n >\n <span className=\"checkbox-wrapper\">\n <input\n type=\"checkbox\"\n id={id}\n name={`checkbox-${id}`}\n value={name[defaultLanguage]}\n checked={isChecked}\n className={`${className ? className : ''} input-checkbox`}\n onChange={e => _handleChange(e.target.checked)}\n />\n <Label id={id} label={label} className=\"label-checkbox\" />\n </span>\n </CheckboxStyled>\n );\n }\n }\n};\n\nCheckbox.propTypes = {\n className: PropTypes.string,\n formId: PropTypes.string,\n id: PropTypes.string,\n type: PropTypes.string,\n label: PropTypes.string,\n setCheckboxValue: PropTypes.func,\n validations: PropTypes.object,\n defaultLanguage: PropTypes.string,\n name: PropTypes.object,\n default: PropTypes.object,\n};\n\nexport default Checkbox;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport styled, { css } from 'styled-components';\nimport Label from '../label/label';\n\nconst RadioButtonStyled = styled.div`\n ${({ useDefaultTheme }) => {\n return css`\n ${useDefaultTheme &&\n css`\n .radio-wrapper {\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-start;\n align-items: center;\n input {\n height: auto;\n width: auto;\n margin: 0 4px 0 0;\n }\n label {\n display: inline-block;\n }\n }\n `}\n `;\n }};\n`;\n\nconst RadioButton = ({\n className,\n formId,\n setValue,\n id,\n type,\n label,\n validations,\n defaultLanguage,\n useDefaultTheme,\n}) => {\n if (!validations) return null;\n const isRequired = validations && validations.required ? true : false;\n const cbValues =\n validations &&\n validations.allowedValues &&\n validations.allowedValues.values;\n\n if (!cbValues || cbValues.length < 1) return null;\n return (\n <RadioButtonStyled\n className=\"radio-container\"\n useDefaultTheme={useDefaultTheme}\n >\n <Label\n id={id}\n label={label}\n isRequired={isRequired}\n className=\"label-radio-container\"\n />\n {cbValues.map((val, idx) => {\n return (\n <span key={idx} className=\"radio-wrapper\">\n <input\n type={type}\n id={val[defaultLanguage]}\n name={id}\n value={val[defaultLanguage]}\n className={`${className ? className : ''} input-radio`}\n onChange={e => {\n setValue(formId, id, e.target.value);\n }}\n />\n <Label\n id={val[defaultLanguage]}\n label={val[defaultLanguage]}\n className=\"label-radio\"\n />\n </span>\n );\n })}\n </RadioButtonStyled>\n );\n};\n\nRadioButton.propTypes = {\n className: PropTypes.string,\n formId: PropTypes.string,\n setValue: PropTypes.func,\n id: PropTypes.string,\n type: PropTypes.string,\n label: PropTypes.string,\n validations: PropTypes.object,\n defaultLanguage: PropTypes.string,\n useDefaultTheme: PropTypes.bool,\n};\n\nexport default RadioButton;\n","//example date string: 2019-01-02T13:05:00 (expects ISO 8601 Datetime format yyyy-mm-ddThh:mm:ss [this is the format returned from Contensis delivery api])\n//yyyy > year long, eg. 2019\n//yy > year short, eg. 19\n//MMMM > month long, eg. January\n//MMM > month short, eg. Jan\n//MM > month with leading 0, eg. 01\n//M > month, eg. 1\n//dddd > day long, eg. Monday\n//ddd > day short, eg. Mon\n//dd > date with leading 0, eg. 02\n//d > date, eg. 2\n//HH > 24 hour clock hour parameter with leading 0, eg. ...T03:05:00 = 03\n//H > 24 hour clock hour parameter, eg. ...T03:05:00 = 3\n//hh > 12 hour clock hour parameter with leading 0, eg. ...T16:05:00 = 04\n//h > 12 hour clock hour parameter, eg. ...T16:05:00 = 4\n//mm > minutes with leading 0, eg. ...T16:05:00 = 05\n//m > minutes, eg ...T16:05:00 = 5\n//t > abbreviated AM / PM, e.g. A or P\n//tt > AM / PM, e.g. AM or PM\n\nconst formatDate = (date, format = 'dd MMMM yyyy') => {\n if (!date) return null;\n const dateObj = new Date(date);\n const dateString = date.toString().split('T');\n const dateArr = dateString[0].split('-');\n const year = dateArr[0];\n const month = dateArr[1];\n const day = dateArr[2];\n const dayNameInt = dateObj.getDay();\n const timeArr = dateString[1].split(':');\n const hour = timeArr[0];\n const minute = timeArr[1];\n\n //convert to abstract strings to avoid character replacement along the chain, eg. Monday would match 'M' month single parameter\n const YEAR = ['&&', '&'];\n const MONTH = ['££££', '£££', '££', '£'];\n const DAY = ['%%%%', '%%%', '%%', '%'];\n const HOUR24 = ['!!', '!'];\n const HOUR12 = ['^^', '^'];\n const MINUTE = ['**', '*'];\n const TF = ['??', '?'];\n\n let formattedDate = format\n .replace('yyyy', YEAR[0])\n .replace('yy', YEAR[1])\n .replace('y', '') //'y' && 'yyy' not valid\n .replace('MMMM', MONTH[0])\n .replace('MMM', MONTH[1])\n .replace('MM', MONTH[2])\n .replace('M', MONTH[3])\n .replace('dddd', DAY[0])\n .replace('ddd', DAY[1])\n .replace('dd', DAY[2])\n .replace('d', DAY[3])\n .replace('HH', HOUR24[0])\n .replace('H', HOUR24[1])\n .replace('hh', HOUR12[0])\n .replace('h', HOUR12[1])\n .replace('mm', MINUTE[0])\n .replace('m', MINUTE[1])\n .replace('tt', TF[0])\n .replace('t', TF[1])\n .replace(YEAR[0], year)\n .replace(YEAR[1], year.slice(-2))\n .replace(MONTH[0], monthsLong[parseInt(month, 10)])\n .replace(MONTH[1], monthsShort[parseInt(month, 10)])\n .replace(MONTH[2], month)\n .replace(MONTH[3], parseInt(month, 10))\n .replace(DAY[0], daysLong[dayNameInt])\n .replace(DAY[1], daysShort[dayNameInt])\n .replace(DAY[2], day)\n .replace(DAY[3], parseInt(day, 10))\n .replace(HOUR24[0], hour)\n .replace(HOUR24[1], parseInt(hour, 10))\n .replace(HOUR12[0], parseHour(hour))\n .replace(HOUR12[1], parseInt(parseHour(hour), 10))\n .replace(MINUTE[0], minute)\n .replace(MINUTE[1], parseInt(minute, 10))\n .replace(TF[0], parseTF(hour))\n .replace(TF[1], parseTF(hour).slice(0, -1));\n\n return formattedDate;\n};\n\nconst monthsShort = [\n '',\n 'Jan',\n 'Feb',\n 'Mar',\n 'Apr',\n 'May',\n 'Jun',\n 'Jul',\n 'Aug',\n 'Sep',\n 'Oct',\n 'Nov',\n 'Dec',\n];\n\nconst monthsLong = [\n '',\n 'January',\n 'February',\n 'March',\n 'April',\n 'May',\n 'June',\n 'July',\n 'August',\n 'September',\n 'October',\n 'November',\n 'December',\n];\n\nconst daysShort = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'];\n\nconst daysLong = [\n 'Sunday',\n 'Monday',\n 'Tuesday',\n 'Wednesday',\n 'Thursday',\n 'Friday',\n 'Saturday',\n];\n\nconst parseHour = hour => {\n return hour > 12 ? hour - 12 : hour;\n};\n\nconst parseTF = hour => {\n return hour > 11 ? 'PM' : 'AM';\n};\n\nexport default formatDate;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Label from '../label/label';\nimport formatDate from 'zengenti-forms-package/utils/format-date';\n\nconst SingleDate = ({\n className,\n type,\n id,\n label,\n validations,\n setValue,\n formId,\n}) => {\n const isRequired = validations && validations.required ? true : false;\n const onlyPassedDates = validations && validations.pastDateTime;\n\n const d = new Date();\n const todaysDate = d.toISOString();\n\n const _handleChange = (formId, id, value) => {\n const d = new Date(value);\n const isoDate = d.toISOString();\n setValue(formId, id, isoDate);\n };\n return (\n <div className=\"date-container\">\n <Label\n id={id}\n label={label}\n isRequired={isRequired}\n className=\"label-date\"\n />\n <input\n type={type}\n id={id}\n name={id}\n className={`${className ? className : ''} input-date`}\n max={onlyPassedDates ? formatDate(todaysDate, 'yyyy-MM-dd') : ''}\n onChange={e => _handleChange(formId, id, e.target.value)}\n />\n </div>\n );\n};\n\nSingleDate.propTypes = {\n className: PropTypes.string,\n formId: PropTypes.string,\n setValue: PropTypes.func,\n type: PropTypes.string,\n id: PropTypes.string,\n label: PropTypes.string,\n validations: PropTypes.object,\n};\n\nexport default SingleDate;\n","import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport Label from '../label/label';\nimport styled, { css } from 'styled-components';\nimport formatDate from 'zengenti-forms-package/utils/format-date';\n\nconst DateRangeStyled = styled.div`\n ${({ useDefaultTheme }) => {\n return css`\n ${useDefaultTheme &&\n css`\n .daterange-wrapper {\n display: flex;\n flex-direction: column;\n input {\n &:first-child {\n margin: 0 0 8px 0;\n }\n }\n }\n `}\n `;\n }};\n`;\n\nconst DateRange = ({\n className,\n id,\n label,\n validations,\n setDateRangeValues,\n formId,\n useDefaultTheme,\n}) => {\n const isRequired = validations && validations.required ? true : false;\n const onlyPassedDates = validations && validations.pastDateTime;\n\n const d = new Date();\n const todaysDate = d.toISOString();\n\n const [toDate, setToDate] = useState('');\n const [fromDate, setFromDate] = useState('');\n\n const _handleDateChange = (dateType, formId, id, value) => {\n _updateDateProps(dateType, value);\n const d = new Date(value);\n const isoDate = d.toISOString();\n setDateRangeValues(formId, id, dateType, isoDate);\n };\n\n const _updateDateProps = (type, date) => {\n switch (type) {\n case 'from': {\n const d = new Date(date);\n const newDate = d.toISOString();\n setFromDate(newDate);\n break;\n }\n case 'to': {\n const d = new Date(date);\n const newDate = d.toISOString();\n setToDate(newDate);\n break;\n }\n default:\n return;\n }\n };\n return (\n <DateRangeStyled\n className={`daterange-container`}\n useDefaultTheme={useDefaultTheme}\n >\n <Label id={id} label={label} isRequired={isRequired} />\n <div className=\"daterange-wrapper\">\n <Label\n id=\"date-from\"\n label=\"Date from\"\n isHidden\n className=\"label-daterange\"\n />\n <input\n type=\"date\"\n id=\"date-from\"\n name={id}\n max={\n onlyPassedDates && !toDate\n ? formatDate(todaysDate, 'yyyy-MM-dd')\n : onlyPassedDates && toDate\n ? formatDate(toDate, 'yyyy-MM-dd')\n : toDate\n ? formatDate(toDate, 'yyyy-MM-dd')\n : ''\n }\n className={`${className ? className : ''} input-daterange`}\n onChange={e => _handleDateChange('from', formId, id, e.target.value)}\n />\n <Label\n id=\"date-to\"\n label=\"Date to\"\n isHidden\n className=\"label-daterange\"\n />\n <input\n type=\"date\"\n id=\"date-to\"\n name={id}\n max={onlyPassedDates ? formatDate(todaysDate, 'yyyy-MM-dd') : ''}\n min={formatDate(fromDate, 'yyyy-MM-dd')}\n className={`${className ? className : ''} input-daterange`}\n onChange={e => _handleDateChange('to', formId, id, e.target.value)}\n />\n </div>\n </DateRangeStyled>\n );\n};\n\nDateRange.propTypes = {\n className: PropTypes.string,\n formId: PropTypes.string,\n setDateRangeValues: PropTypes.func,\n type: PropTypes.string,\n id: PropTypes.string,\n label: PropTypes.string,\n validations: PropTypes.object,\n useDefaultTheme: PropTypes.bool,\n};\n\nexport default DateRange;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Label from '../label/label';\nimport styled, { css } from 'styled-components';\n\nconst EntryPickerStyled = styled.div`\n ${({ useDefaultTheme }) => {\n return css`\n ${useDefaultTheme &&\n css`\n .radio-wrapper,\n .checkbox-wrapper {\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-start;\n align-items: center;\n input {\n height: auto;\n width: auto;\n margin: 0 4px 0 0;\n }\n label {\n display: inline-block;\n }\n }\n `}\n `;\n }};\n`;\n\nconst EntryPicker = ({\n className,\n results,\n id,\n label,\n validations,\n type,\n useDefaultTheme,\n setValue,\n formId,\n}) => {\n if (!results || results.length > 3) return null;\n const isRequired = validations && validations.required ? true : false;\n\n let valArr = [];\n const _handleChange = (formId, id, value, isChecked) => {\n if (type === 'checkbox') {\n if (isChecked) {\n valArr.push(value);\n } else if (!isChecked) {\n valArr = valArr.filter(valItem => valItem !== value);\n }\n setValue(formId, id, valArr);\n } else {\n setValue(formId, id, value);\n }\n };\n return (\n <EntryPickerStyled\n className={`${type}-container`}\n useDefaultTheme={useDefaultTheme}\n >\n <Label\n id={id}\n label={label}\n isRequired={isRequired}\n className={`label-${type}-container`}\n />\n {results.map((res, idx) => {\n return (\n <span key={idx} className={`${type}-wrapper`}>\n <input\n type={type}\n id={res.entryTitle}\n value={res.entryTitle}\n name={id}\n className={`${className ? className : ''} input-${type}`}\n onChange={e =>\n _handleChange(formId, id, e.target.value, e.target.checked)\n }\n />\n <Label\n id={res.entryTitle}\n label={res.entryTitle}\n className={`label-${type}`}\n />\n </span>\n );\n })}\n </EntryPickerStyled>\n );\n};\n\nEntryPicker.propTypes = {\n className: PropTypes.string,\n results: PropTypes.array,\n id: PropTypes.string,\n label: PropTypes.string,\n validations: PropTypes.object,\n type: PropTypes.string,\n useDefaultTheme: PropTypes.bool,\n setValue: PropTypes.func,\n formId: PropTypes.string,\n};\n\nexport default EntryPicker;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {\n Textarea,\n Textfield,\n HiddenField,\n DropDown,\n Checkbox,\n RadioButton,\n SingleDate,\n DateRange,\n EntryPicker,\n} from '../../components/fields';\n\nconst FormComposer = ({\n fields,\n formData,\n formId,\n setValue,\n setDateRangeValues,\n onValidateField,\n defaultLanguage,\n errors,\n useDefaultTheme,\n entries,\n setCheckboxValue,\n}) => {\n\n if (!fields || fields.length < 1) return null;\n return fields.map((field, idx) => {\n if (!field) return null;\n switch (field.type) {\n case 'number':\n case 'textfield': {\n return (\n <Textfield\n key={`${field.id}-${idx}`}\n field={field}\n type={field.type}\n id={field.id}\n label={field.name && field.name[defaultLanguage]}\n formId={formId}\n setValue={setValue}\n validations={field.validations}\n onValidateField={onValidateField}\n defaultLanguage={defaultLanguage}\n defaultValue={(formData && formData[field.id]) || field.default}\n placeholder={field.editor}\n errors={errors}\n useDefaultTheme={useDefaultTheme}\n />\n );\n }\n case 'textarea': {\n return (\n <Textarea\n key={`${field.id}-${idx}`}\n field={field}\n type={field.type}\n id={field.id}\n label={field.name && field.name[defaultLanguage]}\n formId={formId}\n setValue={setValue}\n validations={field.validations}\n defaultLanguage={defaultLanguage}\n defaultValue={field.default}\n placeholder={field.editor}\n onValidateField={onValidateField}\n useDefaultTheme={useDefaultTheme}\n errors={errors}\n />\n );\n }\n case 'dropdown': {\n return (\n <DropDown\n key={`${field.id}-${idx}`}\n id={field.id}\n label={field.name && field.name[defaultLanguage]}\n validations={field.validations}\n defaultLanguage={defaultLanguage}\n defaultValue={field.default}\n formId={formId}\n setValue={setValue}\n useDefaultTheme={useDefaultTheme}\n />\n );\n }\n case 'checkbox': {\n return (\n <Checkbox\n key={`${field.id}-${idx}`}\n id={field.id}\n name={field.name}\n label={field.name && field.name[defaultLanguage]}\n validations={field.validations}\n defaultLanguage={defaultLanguage}\n setValue={setValue}\n formId={formId}\n defaultValue={(formData && formData[field.id]) || field.default}\n type={field.dataType === 'boolean' ? 'single' : 'multiple'}\n useDefaultTheme={useDefaultTheme}\n setCheckboxValue={setCheckboxValue}\n />\n );\n }\n case 'radio': {\n return (\n <RadioButton\n key={`${field.id}-${idx}`}\n id={field.id}\n type={field.type}\n formId={formId}\n setValue={setValue}\n label={field.name && field.name[defaultLanguage]}\n validations={field.validations}\n defaultLanguage={defaultLanguage}\n useDefaultTheme={useDefaultTheme}\n />\n );\n }\n case 'entryPicker': {\n const type = field.dataType === 'objectArray' ? 'checkbox' : 'radio';\n const results = entries && entries[field.id] && entries[field.id].items;\n return (\n <EntryPicker\n key={`${field.id}-${idx}`}\n type={type}\n results={results}\n id={field.id}\n label={field.name && field.name[defaultLanguage]}\n useDefaultTheme={useDefaultTheme}\n setValue={setValue}\n onValidateField={onValidateField}\n formId={formId}\n />\n );\n }\n case 'date': {\n return (\n <SingleDate\n key={`${field.id}-${idx}`}\n type={field.type}\n id={field.id}\n label={field.name && field.name[defaultLanguage]}\n validations={field.validations}\n formId={formId}\n setValue={setValue}\n useDefaultTheme={useDefaultTheme}\n />\n );\n }\n case 'dateRange': {\n return (\n <DateRange\n key={`${field.id}-${idx}`}\n id={field.id}\n label={field.name && field.name[defaultLanguage]}\n validations={field.validations}\n formId={formId}\n setDateRangeValues={setDateRangeValues}\n useDefaultTheme={useDefaultTheme}\n />\n );\n }\n case 'hidden': {\n return (\n <HiddenField\n key={`${field.id}-${idx}`}\n type={field.type}\n id={field.id}\n label={field.name && field.name[defaultLanguage]}\n defaultLanguage={defaultLanguage}\n defaultValue={field.default}\n placeholder={field.editor}\n />\n );\n }\n }\n });\n};\n\nFormComposer.propTypes = {\n fields: PropTypes.oneOfType([PropTypes.array, PropTypes.object]),\n formData: PropTypes.object,\n entries: PropTypes.oneOfType([PropTypes.array, PropTypes.object]),\n formId: PropTypes.string,\n setValue: PropTypes.func,\n onValidateField: PropTypes.func,\n setDateRangeValues: PropTypes.func,\n defaultLanguage: PropTypes.string,\n errors: PropTypes.array,\n useDefaultTheme: PropTypes.bool,\n setCheckboxValue: PropTypes.func,\n};\n\nexport default FormComposer;\n","import React from 'react';\n\nexport const Loader = ({ className, color = '#fff', width = 20, height = 20 }) => {\n return (\n <svg\n className={className}\n width={`${width}px`}\n height={`${height}px`}\n viewBox=\"0 0 100 100\"\n preserveAspectRatio=\"xMidYMid\"\n >\n <circle\n cx=\"50\"\n cy=\"50\"\n fill=\"none\"\n stroke={color}\n strokeWidth=\"10\"\n r=\"35\"\n strokeDasharray=\"164.93361431346415 56.97787143782138\"\n style={{ animationPlayState: 'running', animationDelay: '0s' }}\n transform=\"rotate(311.547 50 50)\"\n >\n <animateTransform\n attributeName=\"transform\"\n type=\"rotate\"\n repeatCount=\"indefinite\"\n dur=\"1s\"\n values=\"0 50 50;360 50 50\"\n keyTimes=\"0;1\"\n style={{ animationPlayState: 'running', animationDelay: '0s' }}\n />\n </circle>\n </svg>\n );\n};\n","import styled, { css } from 'styled-components';\n\nexport default styled.button`\n ${({ theme, useDefaultTheme }) => {\n return css`\n ${useDefaultTheme &&\n css`\n display: inline-flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n margin: 16px 0 0 0;\n padding: 8px 16px;\n border-radius: 3px;\n border: 1px solid ${theme.colors.border};\n font-family: inherit;\n transition: opacity 200ms ease;\n &:disabled {\n opacity: 0.7;\n cursor: not-allowed;\n border-color: ${theme.colors.light_grey_light};\n background: ${theme.colors.light_grey_light};\n color: ${theme.colors.light_grey_dark};\n svg {\n margin-left: 4px;\n circle {\n stroke: ${theme.colors.light_grey_dark};\n }\n }\n }\n &:hover {\n opacity: 0.7;\n }\n `}\n `;\n }};\n`;\n","\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport ButtonStyled from './button.styled';\nimport { Loader } from 'zengenti-forms-package/components/loader';\n\nexport const Button = ({\n className,\n type = 'button',\n text,\n action,\n loading,\n useDefaultTheme,\n}) => {\n return (\n <ButtonStyled\n className={`${className ? className : ''} btnSubmit`}\n type={type}\n onClick={() => action()}\n disabled={loading}\n useDefaultTheme={useDefaultTheme}\n >\n {text}\n {loading && <Loader height={18} width={18} />}\n </ButtonStyled>\n );\n};\n\nButton.propTypes = {\n className: PropTypes.string,\n type: PropTypes.string,\n text: PropTypes.string,\n action: PropTypes.func,\n loading: PropTypes.bool,\n useDefaultTheme: PropTypes.bool,\n};\n\nexport default Button;\n","import styled, { css } from 'styled-components';\n\nexport default styled.div`\n ${({ theme }) => {\n return css`\n background: #F1F6FD;\n box-shadow: inset 4px 0 0 ${theme.colors.red_darker};\n border-radius: 0 8px 8px 0;\n padding: 16px 24px;\n margin-top: 8px;\n span {\n font-weight: 400; \n font-size: 14px;\n line-height: 24px;\n }\n `;\n }};\n`;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport CalloutStyled from './callout.styled';\n\nexport const Callout = ({ className, text }) => {\n return (\n <CalloutStyled className={className}>\n <span>{text}</span>\n </CalloutStyled>\n )\n}\n\nCallout.propTypes = {\n className: PropTypes.string,\n text: PropTypes.string,\n};\n","import React, { useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { useSelector, useDispatch } from 'react-redux';\nimport { ThemeProvider } from 'zengenti-forms-package/theme/themeContext';\nimport { defaultTheme } from 'zengenti-forms-package/theme/form';\nimport {\n makeSelectFormStatus,\n makeSelectPagedFields,\n makeSelectPagingInfo,\n makeSelectDefaultLang,\n makeSelectFormSettings,\n makeSelectFormEntries,\n makeSelectFormPostData,\n makeSelectFormFieldErrors,\n makeSelectFormValidationSent,\n} from 'zengenti-forms-package/redux/selectors';\nimport { \n setCheckboxValue,\n setDateRangeValues,\n setFormId,\n setValue,\n onSubmit,\n doTogglePageBack,\n doTogglePageForward,\n onValidateField\n} from 'zengenti-forms-package/redux/actions';\nimport FormStyled from './form.styled';\nimport FormComposer from '../composer/formComposer';\nimport { Loader } from 'zengenti-forms-package/components/loader';\nimport { Button } from 'zengenti-forms-package/components/button';\nimport { Callout } from 'zengenti-forms-package/components/callout';\n\n\nconst Form = ({\n className,\n formId,\n useDefaultTheme = true,\n onCustomSubmit,\n}) => {\n const dispatch = useDispatch();\n\n const _setFormId = (formId) => dispatch(setFormId(formId));\n const _setValue = (formId, id, value) => dispatch(setValue(formId, id, value));\n const _setCheckboxValue = (formId, id, value, isChecked) => dispatch(setCheckboxValue(formId, id, value, isChecked));\n const _setDateRangeValues = (formId, id, dateType, value) => dispatch(setDateRangeValues(formId, id, dateType, value));\n const _onValidateField = (formId, id, value) => dispatch(onValidateField(formId, id, value));\n const _doTogglePageForward = (formId, pageIndex) => dispatch(doTogglePageForward(formId, pageIndex));\n const _doTogglePageBack = (formId, pageIndex) => dispatch(doTogglePageBack(formId, pageIndex)); \n const _onSubmit = formId => dispatch(onSubmit(formId));\n\n useEffect(() => {\n if (formId) _setFormId(formId)\n }, [formId]); \n\n const selectFormFields = makeSelectPagedFields(formId);\n const selectFormStatus = makeSelectFormStatus(formId);\n const selectPagingInfo = makeSelectPagingInfo(formId);\n const selectDefaultLang = makeSelectDefaultLang(formId);\n const selectFormSettings = makeSelectFormSettings(formId);\n const selectFormFieldErrors = makeSelectFormFieldErrors(formId)\n const selectFormEntries = makeSelectFormEntries(formId);\n const selectFormPostData = makeSelectFormPostData(formId);\n const selectFormValidationSent = makeSelectFormValidationSent(formId);\n\n const status = useSelector(selectFormStatus);\n const fields = useSelector(selectFormFields);\n const pagingInfo = useSelector(selectPagingInfo);\n const defaultLanguage = useSelector(selectDefaultLang);\n const settings = useSelector(selectFormSettings);\n const errors = useSelector(selectFormFieldErrors);\n const entries = useSelector(selectFormEntries);\n const formData = useSelector(selectFormPostData);\n const validate = useSelector(selectFormValidationSent);\n\n\n if (pagingInfo && pagingInfo.pageCount > 1) {\n const isLastPage = pagingInfo.pageCount == pagingInfo.pageIndex + 1;\n return (\n <ThemeProvider theme={defaultTheme}>\n <FormStyled\n className={className}\n id={formId}\n useDefaultTheme={useDefaultTheme}\n >\n {!status?.hasSuccess && !status?.isLoading && (\n <>\n {pagingInfo.pageIndex > 0 && (\n <Button\n type=\"button\"\n text=\"Go Back\"\n action={() =>\n _doTogglePageBack(formId, pagingInfo.pageIndex - 1)\n }\n useDefaultTheme={useDefaultTheme}\n />\n )}\n <FormComposer\n fields={fields}\n formData={formData}\n formId={formId}\n setValue={_setValue}\n onValidateField={_onValidateField}\n defaultLanguage={defaultLanguage}\n errors={errors}\n pagingInfo={pagingInfo}\n useDefaultTheme={useDefaultTheme}\n entries={entries}\n setDateRangeValues={_setDateRangeValues}\n setCheckboxValue={_setCheckboxValue}\n />\n {!isLastPage && (\n <Button\n type=\"button\"\n text=\"Next\"\n action={() =>\n _doTogglePageForward(formId, pagingInfo.pageIndex + 1)\n }\n useDefaultTheme={useDefaultTheme}\n />\n )}\n {isLastPage && (\n <Button\n text={settings?.submitButtonText || \"Submit\"}\n type=\"button\"\n loading={status?.isLoading}\n action={() => {\n _onSubmit(formId);\n if (onCustomSubmit) onCustomSubmit();\n }}\n useDefaultTheme={useDefaultTheme}\n />\n )}\n </>\n )}\n {status?.isLoading && !status?.hasSuccess && <Loader className=\"loading\" height={24} width={24} color=\"#333\" />}\n {status?.hasSuccess && status?.messages.success && (\n <p className=\"success-message\">{status.messages.success}</p>\n )}\n {errors?.length >= 1 && validate && (\n <div className=\"form__errors\" role=\"alert\">\n {errors?.map(({ message }, i) => {\n return <Callout className='form__error' text={message} key={i} />\n })}\n </div>\n )}\n </FormStyled>\n </ThemeProvider>\n )\n } else {\n return (\n <ThemeProvider theme={defaultTheme}>\n <FormStyled\n className={className}\n id={formId}\n useDefaultTheme={useDefaultTheme}\n >\n {!status?.hasSuccess && !status?.isLoading && (\n <>\n <FormComposer\n fields={fields}\n formId={formId}\n setValue={_setValue}\n setDateRangeValues={_setDateRangeValues}\n onValidateField={_onValidateField}\n defaultLanguage={defaultLanguage}\n errors={errors}\n useDefaultTheme={useDefaultTheme}\n entries={entries}\n setCheckboxValue={_setCheckboxValue}\n />\n <Button\n loading={status?.isSubmitting}\n text={settings?.submitButtonText || \"Submit\"}\n type=\"button\"\n action={() => {\n _onSubmit(formId);\n if (onCustomSubmit) onCustomSubmit();\n }}\n useDefaultTheme={useDefaultTheme}\n />\n </>\n )}\n {status?.isLoading && !status?.hasSuccess && <Loader className=\"loading\" height={24} width={24} color=\"#333\" />}\n {status?.hasSuccess && status?.messages.success && (\n <p className=\"success-message\">{status.messages.success}</p>\n )}\n {errors?.length >= 1 && validate && (\n <div className=\"form__errors\" role=\"alert\">\n {errors?.map(({ message }, i) => {\n return <Callout className='form__error' text={message} key={i} />\n })}\n </div>\n )} \n </FormStyled>\n </ThemeProvider>\n );\n }\n};\n\nForm.propTypes = {\n className: PropTypes.string,\n formId: PropTypes.string,\n useDefaultTheme: PropTypes.bool,\n onCustomSubmit: PropTypes.func,\n};\n\nexport default Form;\n"],"names":["ACTION_PREFIX","SET_FORM_DATA","SET_FORM_ID","SET_CURRENT_PAGE","PAGE_BACK","PAGE_FORWARD","SET_FIELD_VALUE","SET_DEFAULT_FIELD_VALUE","SUBMIT_FORM_FOR_VALIDATION","SUBMIT_FORM","SUBMIT_FORM_SUCCESS","SUBMIT_FORM_ERROR","SET_SUBMITTING_FORM","SET_ERROR","VALIDATE_FIELD","SET_FIELD_ERROR","SET_DATE_RANGE_VALUES","SET_FORM_ENTRIES","SET_SUCCESS_MESSAGE","SET_CHECKBOX_VALUE","initialSettings","recaptcha","siteKey","initialStatus","isLoading","isSubmitting","hasSuccess","hasError","messages","success","validation","sent","initialPagingInfo","pageIndex","pageCount","currentPageId","initialFormData","formId","data","fields","entries","fieldErrors","groups","defaultLanguage","pagingInfo","status","settings","initialState","produce","state","action","type","pageId","id","value","isChecked","values","filter","v","dateType","message","entryObject","map","entry","selectForms","forms","makeSelectPagedFields","createSelector","_forms$formId","_forms$formId2","length","f","groupId","makeSelectFormStatus","_forms$formId3","makeSelectPagingInfo","_forms$formId4","makeSelectFormSettings","_forms$formId5","makeSelectFormFieldErrors","_forms$formId6","makeSelectFormEntries","_forms$formId7","makeSelectFormPostData","_forms$formId8","makeSelectIsLoading","_forms$formId9","makeSelectIsSubmitting","_forms$formId10","makeSelectHasSuccess","_forms$formId11","makeSelectHasError","_forms$formId12","makeSelectFormFields","_forms$formId13","makeSelectDefaultLang","_forms$formId14","makeSelectFormSuccessMessage","_forms$formId15","makeSelectFormValidationSent","_forms$formId16","makeSelectFormGroup","_forms$formId17","selectors","URI","getFormSchema","options","method","headers","getUrl","schema","request","getEntries","formObj","Accept","body","JSON","stringify","entriesUrl","postForm","submitted","url","fetch","then","response","json","result","catch","error","console","log","domains","doA11yValidation","field","formValidationSent","doValidateField","validations","fieldId","_field$validations","_field$validations$re","isRequired","required","minLength","maxLength","hasRegex","regex","pattern","integer","dataType","decimal","isBusinessEmail","_isRequired$message","_field$name","errorMessage","name","_r$message","r","msg","isValidRegex","isBusinessEmailValid","isInteger","isDecimal","regexPattern","RegExp","test","domain","split","pop","includes","doCreateMessage","currentLength","minLengthVal","minText","toString","maxLengthVal","maxText","rangeText","getFieldType","_field$editor","_field$editor$propert","editor","properties","readOnly","allowedValues","dataFormat","sagas","takeEvery","onFormSuccess","doValidateForm","onSubmitForm","doFetchForm","takeLatest","onValidateField","doTogglePage","getEntryPickerData","setDefaultValueFields","onValidateAllFields","put","call","onValidateSingleField","validateGroupfields","select","selectPostData","postData","selectFormFields","groupFields","groupid","newErrors","forEach","val","err","push","selectFormFieldErrors","errors","fieldData","find","selectFormGroups","formGroups","_schema$groups","group","_schema$groups2","_submitButtonText$def","submitButtonText","default","redirect","window","location","href","canSubmit","_formResObj$sys","rawData","contentType","formPost","formResObj","sys","entryId","selectRouteEntryEntryId","fieldObj","entriesToGet","entriesList","all","entriesObj","allowedContentTypes","contentTypes","versionStatus","language","pageSize","payload","onSubmit","setFormId","setValue","setCheckboxValue","setDateRangeValues","doTogglePageForward","doTogglePageBack","actions","ThemeContext","createContext","ThemeProvider","children","theme","React","createElement","Provider","BaseThemeProvider","propTypes","PropTypes","oneOfType","arrayOf","node","object","colors","white","black","dark_grey_lighter","dark_grey_lightest","dark_grey_light","dark_grey_dark","dark_grey_darker","dark_grey_darkest","light_grey_lightest","light_grey_lighter","light_grey_light","light_grey_dark","light_grey_darker","light_grey_darkest","green_lightest","green_lighter","green_light","green_dark","green_darker","green_darkest","red_lightest","red_lighter","red_light","red_dark","red_darker","red_darkest","defaultTheme","FormStyled","styled","form","withConfig","displayName","componentId","useDefaultTheme","css","Label","className","label","isHidden","htmlFor","string","bool","CharacterLimitStyled","div","neutrals","empress_gray","CharacterLimit","valueAsString","hasMaxLength","hasMinLength","hasInBetween","TextfieldStyled","Textfield","defaultValue","placeholder","hasCharLimit","setCharLimit","useState","placeholderText","defaultValueText","a11yInvalid","setA11yInvalid","_","setTextfieldValue","selectFormValidationSent","useSelector","useEffect","style","position","onChange","e","target","onBlur","onFocus","xmlns","focusable","role","width","height","fill","d","any","func","array","Textarea","showCharLimit","setShowCharLimit","setTextareaValue","HiddenField","Dropdown","ddValues","idx","key","CheckboxStyled","Checkbox","isDefaultChecked","setIsChecked","cbValues","_handleChange","checked","RadioButtonStyled","RadioButton","formatDate","date","format","dateObj","Date","dateString","dateArr","year","month","day","dayNameInt","getDay","timeArr","hour","minute","YEAR","MONTH","DAY","HOUR24","HOUR12","MINUTE","TF","formattedDate","replace","slice","monthsLong","parseInt","monthsShort","daysLong","daysShort","parseHour","parseTF","SingleDate","onlyPassedDates","pastDateTime","todaysDate","toISOString","isoDate","max","DateRangeStyled","DateRange","toDate","setToDate","fromDate","setFromDate","_handleDateChange","_updateDateProps","newDate","min","EntryPickerStyled","EntryPicker","results","valArr","valItem","res","entryTitle","FormComposer","formData","DropDown","items","Loader","color","viewBox","preserveAspectRatio","cx","cy","stroke","strokeWidth","strokeDasharray","animationPlayState","animationDelay","transform","attributeName","repeatCount","dur","keyTimes","button","border","Button","text","loading","ButtonStyled","onClick","disabled","Callout","CalloutStyled","Form","onCustomSubmit","dispatch","useDispatch","_setFormId","_setValue","_setCheckboxValue","_setDateRangeValues","_onValidateField","_doTogglePageForward","_doTogglePageBack","_onSubmit","selectFormStatus","selectPagingInfo","selectDefaultLang","selectFormSettings","selectFormEntries","selectFormPostData","validate","isLastPage","Fragment","i"],"mappings":"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"}
1
+ {"version":3,"file":"forms.js","sources":["../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/redux/types.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/redux/reducer.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/redux/selectors.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/utils/api-utils.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/utils/domains.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/utils/validate-utils.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/utils/transform-utils.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/redux/sagas.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/redux/actions.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/theme/themeContext.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/theme/form/colors.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/theme/form/index.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/features/form/form.styled.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/fields/label/label.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/charaterlimit/characterLimit.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/fields/textfield/textfield.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/fields/textarea/textarea.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/fields/hiddenfield/hiddenField.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/fields/dropdown/dropdown.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/fields/checkbox/checkbox.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/fields/radiobutton/radioButton.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/utils/format-date.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/fields/singledate/SingleDate.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/fields/daterange/dateRange.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/fields/entrypicker/entryPicker.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/features/composer/formComposer.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/loader/loader.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/button/button.styled.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/button/button.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/callout/callout.styled.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/components/callout/callout.js","../node_modules/zengenti-forms-package/src/app/zengenti-forms-package/features/form/form.js"],"sourcesContent":["const ACTION_PREFIX = '@FORM2/';\nexport const SET_FORM_DATA = `${ACTION_PREFIX}SET_FORM_DATA`;\nexport const SET_FORM_ID = `${ACTION_PREFIX}SET_FORM_ID`;\nexport const SET_CURRENT_PAGE = `${ACTION_PREFIX}SET_CURRENT_PAGE`;\nexport const PAGE_BACK = `${ACTION_PREFIX}PAGE_BACK`;\nexport const PAGE_FORWARD = `${ACTION_PREFIX}PAGE_FORWARD`;\nexport const SET_FIELD_VALUE = `${ACTION_PREFIX}SET_FIELD_VALUE`;\nexport const SET_DEFAULT_FIELD_VALUE = `${ACTION_PREFIX}SET_DEFAULT_FIELD_VALUE`;\nexport const SUBMIT_FORM_FOR_VALIDATION = `${ACTION_PREFIX}SUBMIT_FORM_FOR_VALIDATION`;\nexport const SUBMIT_FORM = `${ACTION_PREFIX}SUBMIT_FORM`;\nexport const SUBMIT_FORM_SUCCESS = `${ACTION_PREFIX}SUBMIT_FORM_SUCCESS`;\nexport const SUBMIT_FORM_ERROR = `${ACTION_PREFIX}SUBMIT_FORM_ERROR`;\nexport const SET_SUBMITTING_FORM = `${ACTION_PREFIX}SET_SUBMITTING_FORM`;\nexport const SET_ERROR = `${ACTION_PREFIX}SET_ERROR`;\nexport const VALIDATE_FIELD = `${ACTION_PREFIX}VALIDATE_FIELD`;\nexport const VALIDATE_PAGE = `${ACTION_PREFIX}VALIDATE_PAGE`;\nexport const SET_FIELD_ERROR = `${ACTION_PREFIX}SET_FIELD_ERROR`;\nexport const SET_DATE_RANGE_VALUES = `${ACTION_PREFIX}SET_DATE_RANGE_VALUES`;\nexport const SET_FORM_ENTRIES = `${ACTION_PREFIX}SET_FORM_ENTRIES`;\nexport const SET_SUCCESS_MESSAGE = `${ACTION_PREFIX}SET_SUCCESS_MESSAGE`;\nexport const SET_CHECKBOX_VALUE = `${ACTION_PREFIX}SET_CHECKBOX_VALUE`;\nexport const DO_VALIDATE_FORM = `${ACTION_PREFIX}DO_VALIDATE_FORM`;\n","import { produce } from 'immer';\n\nimport {\n SET_FORM_ID,\n SET_FORM_DATA,\n SET_FIELD_VALUE,\n SET_FIELD_ERROR,\n SET_SUBMITTING_FORM,\n SET_CURRENT_PAGE,\n SET_ERROR,\n SET_DATE_RANGE_VALUES,\n SET_FORM_ENTRIES,\n SUBMIT_FORM_SUCCESS,\n SUBMIT_FORM_ERROR,\n SET_SUCCESS_MESSAGE,\n SET_CHECKBOX_VALUE,\n SET_DEFAULT_FIELD_VALUE,\n SUBMIT_FORM_FOR_VALIDATION,\n} from './types';\n\nconst initialSettings = {\n recaptcha: {\n siteKey: null,\n },\n};\n\nconst initialStatus = {\n isLoading: true,\n isSubmitting: false,\n hasSuccess: false,\n hasError: false,\n messages: {\n success: null,\n },\n validation: {\n sent: false,\n }\n};\n\nconst initialPagingInfo = {\n pageIndex: 0,\n pageCount: 0,\n currentPageId: null,\n};\n\nconst initialFormData = {\n formId: null,\n data: {},\n fields: [],\n entries: [],\n fieldErrors: [],\n groups: [],\n defaultLanguage: null,\n pagingInfo: initialPagingInfo,\n status: initialStatus,\n settings: {},\n};\n\nlet initialState = {\n settings: initialSettings,\n};\n\nexport default produce((state, action) => {\n switch (action.type) {\n case SET_FORM_ID: {\n const { formId } = action || {};\n state[formId] = initialFormData;\n return;\n }\n case SET_FORM_DATA: {\n const { fields, formId, groups, defaultLanguage, settings } = action || {};\n state[formId].fields = fields;\n state[formId].formId = formId;\n state[formId].groups = groups;\n state[formId].defaultLanguage = defaultLanguage;\n state[formId].status.isSubmitting = false;\n state[formId].status.isLoading = false;\n state[formId].status.hasSuccess = false;\n state[formId].status.hasError = false;\n state[formId].settings = settings;\n return;\n }\n case SET_CURRENT_PAGE: {\n const { formId, pageId, pageIndex, pageCount } = action || {};\n state[formId].pagingInfo.currentPageId = pageId;\n state[formId].pagingInfo.pageIndex = pageIndex;\n state[formId].pagingInfo.pageCount = pageCount;\n return;\n }\n case SET_FIELD_VALUE: {\n const { formId, id, value } = action || {};\n state[formId].data[id] = value;\n return;\n }\n case SET_DEFAULT_FIELD_VALUE: {\n const { formId, value } = action || {};\n state[formId].data = {\n ...state[formId].data,\n ...value\n };\n return;\n }\n case SET_CHECKBOX_VALUE: {\n const { formId, id, value, isChecked } = action || {};\n let values = state[formId].data[id] || [];\n if (isChecked) state[formId].data[id] = { ...values, value };\n else state[formId].data[id] = values.filter(v => v !== value);\n return;\n }\n case SET_DATE_RANGE_VALUES: {\n const { formId, id, value, dateType } = action || {};\n state[formId].data[id][dateType] = value;\n return;\n }\n case SET_FIELD_ERROR: {\n const { formId, value } = action || {};\n state[formId].fieldErrors = value;\n return;\n }\n case SET_SUBMITTING_FORM: {\n const { formId, isSubmitting } = action || {};\n state[formId].status.isSubmitting = isSubmitting;\n return;\n }\n case SUBMIT_FORM_SUCCESS: {\n const { formId } = action || {};\n state[formId].status.hasError = false;\n state[formId].status.isSubmitting = false;\n state[formId].status.hasSuccess = true;\n state[formId].status.validation.sent = false;\n return;\n }\n case SUBMIT_FORM_FOR_VALIDATION: {\n const { formId } = action || {};\n state[formId].status.validation.sent = true;\n state[formId].status.isSubmitting = false;\n state[formId].status.hasSuccess = false;\n state[formId].status.hasError = false;\n return;\n }\n case SET_SUCCESS_MESSAGE: {\n const { formId, message } = action || {};\n state[formId].status.messages.success = message;\n return;\n }\n case SUBMIT_FORM_ERROR: {\n const { formId } = action || {};\n state[formId].status.hasError = true;\n state[formId].status.isSubmitting = false;\n state[formId].status.validation.sent = false;\n return;\n }\n case SET_FORM_ENTRIES: {\n const { formId, entries } = action || {};\n const entryObject = {};\n entries.map(entry => {\n if (!entry) return null;\n entryObject[entry.id] = entry.entries;\n return entryObject;\n });\n state[formId].entries = entryObject;\n return;\n }\n case SET_ERROR: {\n const { formId } = action || {};\n state[formId].status.hasError = true;\n state[formId].status.isSubmitting = false;\n return;\n }\n default:\n return state;\n }\n}, initialState);\n","import { createSelector } from 'reselect';\n\nexport const selectForms = state => state.forms;\n\nexport const makeSelectPagedFields = formId =>\n createSelector(selectForms, forms => {\n if (forms?.[formId]) {\n const pagingInfo = forms?.[formId]?.pagingInfo;\n const fields = forms?.[formId]?.fields;\n if (fields?.length > 0 && pagingInfo.pageCount > 1) return fields.filter(f => f.groupId == pagingInfo.currentPageId);\n else return fields;\n }\n });\n\nexport const makeSelectFormStatus = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.status);\n \nexport const makeSelectPagingInfo = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.pagingInfo);\n\nexport const makeSelectFormSettings = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.settings)\n \nexport const makeSelectFormFieldErrors = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.fieldErrors);\n\nexport const makeSelectFormEntries = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.entries);\n\nexport const makeSelectFormPostData = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.data);\n\nexport const makeSelectIsLoading = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.status.isLoading);\n\n export const makeSelectIsSubmitting = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.status.isSubmitting);\n\nexport const makeSelectHasSuccess = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.status.hasSuccess);\n\nexport const makeSelectHasError = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.status.hasError);\n\nexport const makeSelectFormFields = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.fields);\n\nexport const makeSelectDefaultLang = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.defaultLanguage);\n\nexport const makeSelectFormSuccessMessage = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.status.messages.success);\n\nexport const makeSelectFormValidationSent = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.status.validation.sent);\n\nexport const makeSelectFormGroup = formId =>\n createSelector(selectForms, forms => forms?.[formId]?.groups);\n\n\nexport const selectors = {\n selectForms,\n makeSelectPagedFields,\n makeSelectFormStatus,\n makeSelectPagingInfo,\n makeSelectFormSettings,\n makeSelectFormFieldErrors,\n makeSelectFormEntries,\n makeSelectFormPostData,\n makeSelectIsLoading,\n makeSelectIsSubmitting,\n makeSelectHasSuccess,\n makeSelectFormFields,\n makeSelectDefaultLang,\n makeSelectFormSuccessMessage,\n makeSelectFormValidationSent,\n makeSelectFormGroup,\n makeSelectHasError\n}\n","const URI = '/forms';\n\nexport const getFormSchema = async formId => {\n var options = {\n method: 'GET',\n headers: {\n 'Content-Type': 'application/json',\n },\n };\n const getUrl = `${URI}/${formId}`;\n const schema = await request(getUrl, options);\n return schema;\n};\nexport const getEntries = async (formObj, id) => {\n var options = {\n method: 'POST',\n headers: {\n Accept: '*/*',\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(formObj),\n };\n const entriesUrl = `${URI}/entries`;\n const entries = await request(entriesUrl, options);\n\n return {\n entries,\n id,\n };\n};\nexport const postForm = async formObj => {\n var options = {\n method: 'POST',\n headers: {\n Accept: '*/*',\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(formObj),\n };\n const submitted = await request(URI, options);\n return submitted;\n};\nconst request = async (url, options) => {\n return (\n fetch(url, options)\n .then(response => response.json())\n .then(result => {\n return result;\n })\n // eslint-disable-next-line no-console\n .catch(error => console.log('error', error))\n );\n};\n","export const domains = [\n '1033edge.com',\n '11mail.com',\n '123.com',\n '123box.net',\n '123india.com',\n '123mail.cl',\n '123qwe.co.uk',\n '126.com',\n '150ml.com',\n '15meg4free.com',\n '163.com',\n '1coolplace.com',\n '1freeemail.com',\n '1funplace.com',\n '1internetdrive.com',\n '1mail.net',\n '1me.net',\n '1mum.com',\n '1musicrow.com',\n '1netdrive.com',\n '1nsyncfan.com',\n '1under.com',\n '1webave.com',\n '1webhighway.com',\n '212.com',\n '24horas.com',\n '2911.net',\n '2bmail.co.uk',\n '2d2i.com',\n '2die4.com',\n '3000.it',\n '321media.com',\n '37.com',\n '3ammagazine.com',\n '3dmail.com',\n '3email.com',\n '3xl.net',\n '444.net',\n '4email.com',\n '4email.net',\n '4mg.com',\n '4newyork.com',\n '4x4man.com',\n '5iron.com',\n '5star.com',\n '88.am',\n '8848.net',\n '888.nu',\n '97rock.com',\n 'aaamail.zzn.com',\n 'aamail.net',\n 'aaronkwok.net',\n 'abbeyroadlondon.co.uk',\n 'abcflash.net',\n 'abdulnour.com',\n 'aberystwyth.com',\n 'abolition-now.com',\n 'about.com',\n 'academycougars.com',\n 'acceso.or.cr',\n 'access4less.net',\n 'accessgcc.com',\n 'ace-of-base.com',\n 'acmecity.com',\n 'acmemail.net',\n 'acninc.net',\n 'adelphia.net',\n 'adexec.com',\n 'adfarrow.com',\n 'adios.net',\n 'ados.fr',\n 'advalvas.be',\n 'aeiou.pt',\n 'aemail4u.com',\n 'aeneasmail.com',\n 'afreeinternet.com',\n 'africamail.com',\n 'agoodmail.com',\n 'ahaa.dk',\n 'aichi.com',\n 'aim.com',\n 'airforce.net',\n 'airforceemail.com',\n 'airmail.net',\n 'airpost.net',\n 'ajacied.com',\n 'ak47.hu',\n 'aknet.kg',\n 'albawaba.com',\n 'alex4all.com',\n 'alexandria.cc',\n 'algeria.com',\n 'alhilal.net',\n 'alibaba.com',\n 'alice.it',\n 'aliceadsl.fr',\n 'alive.cz',\n 'aliyun.com',\n 'allmail.net',\n 'alloymail.com',\n 'allracing.com',\n 'allsaintsfan.com',\n 'alltel.net',\n 'alskens.dk',\n 'altavista.com',\n 'altavista.net',\n 'altavista.se',\n 'alternativagratis.com',\n 'alumnidirector.com',\n 'alvilag.hu',\n 'amele.com',\n 'america.hm',\n 'ameritech.net',\n 'amnetsal.com',\n 'amrer.net',\n 'amuro.net',\n 'amuromail.com',\n 'ananzi.co.za',\n 'ancestry.com',\n 'andylau.net',\n 'anfmail.com',\n 'angelfan.com',\n 'angelfire.com',\n 'animal.net',\n 'animalhouse.com',\n 'animalwoman.net',\n 'anjungcafe.com',\n 'anote.com',\n 'another.com',\n 'anotherwin95.com',\n 'anti-social.com',\n 'antisocial.com',\n 'antongijsen.com',\n 'antwerpen.com',\n 'anymoment.com',\n 'anytimenow.com',\n 'aol.com',\n 'aol.it',\n 'apexmail.com',\n 'apmail.com',\n 'apollo.lv',\n 'approvers.net',\n 'arabia.com',\n 'arabtop.net',\n 'arcademaster.com',\n 'archaeologist.com',\n 'arcor.de',\n 'arcotronics.bg',\n 'argentina.com',\n 'aristotle.org',\n 'army.net',\n 'arnet.com.ar',\n 'artlover.com',\n 'artlover.com.au',\n 'as-if.com',\n 'asean-mail.com',\n 'asheville.com',\n 'asia-links.com',\n 'asia.com',\n 'asiafind.com',\n 'asianavenue.com',\n 'asiancityweb.com',\n 'asiansonly.net',\n 'asianwired.net',\n 'asiapoint.net',\n 'assala.com',\n 'assamesemail.com',\n 'astroboymail.com',\n 'astrolover.com',\n 'astrosfan.com',\n 'astrosfan.net',\n 'asurfer.com',\n 'athenachu.net',\n 'atina.cl',\n 'atl.lv',\n 'atlanticbb.net',\n 'atlaswebmail.com',\n 'atlink.com',\n 'ato.check.com',\n 'atozasia.com',\n 'att.net',\n 'att.net',\n 'attbi.com',\n 'attglobal.net',\n 'attglobal.net',\n 'attymail.com',\n 'au.ru',\n 'ausi.com',\n 'austin.rr.com',\n 'australia.edu',\n 'australiamail.com',\n 'austrosearch.net',\n 'autoescuelanerja.com',\n 'automotiveauthority.com',\n 'avh.hu',\n 'awsom.net',\n 'axoskate.com',\n 'ayna.com',\n 'azimiweb.com',\n 'bachelorboy.com',\n 'bachelorgal.com',\n 'backpackers.com',\n 'backstreet-boys.com',\n 'backstreetboysclub.com',\n 'bagherpour.com',\n 'bangkok.com',\n 'bangkok2000.com',\n 'bannertown.net',\n 'baptistmail.com',\n 'baptized.com',\n 'barcelona.com',\n 'baseballmail.com',\n 'basketballmail.com',\n 'batuta.net',\n 'baudoinconsulting.com',\n 'bboy.zzn.com',\n 'bcpl.net',\n 'bcvibes.com',\n 'beeebank.com',\n 'beenhad.com',\n 'beep.ru',\n 'beer.com',\n 'beethoven.com',\n 'belice.com',\n 'belizehome.com',\n 'bellatlantic.net',\n 'bellnet.ca',\n 'bellsouth.net',\n 'bellsouth.net',\n 'berkscounty.com',\n 'berlin.com',\n 'berlin.de',\n 'berlinexpo.de',\n 'bestmail.us',\n 'bestweb.net',\n 'bettergolf.net',\n 'bev.net',\n 'bharatmail.com',\n 'bigassweb.com',\n 'bigblue.net.au',\n 'bigboab.com',\n 'bigfoot.com',\n 'bigfoot.de',\n 'bigger.com',\n 'bigmailbox.com',\n 'bigpond.com',\n 'bigpond.com.au',\n 'bigpond.net.au',\n 'bigramp.com',\n 'bikemechanics.com',\n 'bikeracer.com',\n 'bikeracers.net',\n 'bikerider.com',\n 'billsfan.com',\n 'billsfan.net',\n 'bimamail.com',\n 'bimla.net',\n 'birdowner.net',\n 'bisons.com',\n 'bitmail.com',\n 'bitpage.net',\n 'bizhosting.com',\n 'bla-bla.com',\n 'blackburnmail.com',\n 'blackplanet.com',\n 'blacksburg.net',\n 'blazemail.com',\n 'blazenet.net',\n 'bluehyppo.com',\n 'bluemail.ch',\n 'bluemail.dk',\n 'bluesfan.com',\n 'bluewin.ch',\n 'blueyonder.co.uk',\n 'blushmail.com',\n 'bmlsports.net',\n 'boardermail.com',\n 'boatracers.com',\n 'bol.com.br',\n 'bolando.com',\n 'bollywoodz.com',\n 'bolt.com',\n 'boltonfans.com',\n 'bombdiggity.com',\n 'bonbon.net',\n 'boom.com',\n 'bootmail.com',\n 'bornnaked.com',\n 'bossofthemoss.com',\n 'bostonoffice.com',\n 'bounce.net',\n 'box.az',\n 'boxbg.com',\n 'boxemail.com',\n 'boxfrog.com',\n 'boyzoneclub.com',\n 'bradfordfans.com',\n 'brasilia.net',\n 'brazilmail.com.br',\n 'breathe.com',\n 'bresnan.net',\n 'brfree.com.br',\n 'bright.net',\n 'britneyclub.com',\n 'brittonsign.com',\n 'broadcast.net',\n 'bt.com',\n 'btinternet.com',\n 'btopenworld.co.uk',\n 'buffymail.com',\n 'bullsfan.com',\n 'bullsgame.com',\n 'bumerang.ro',\n 'bunko.com',\n 'buryfans.com',\n 'business-man.com',\n 'businessman.net',\n 'businessweekmail.com',\n 'busta-rhymes.com',\n 'busymail.com',\n 'buyersusa.com',\n 'bvimailbox.com',\n 'byteme.com',\n 'c2i.net',\n 'c3.hu',\n 'c4.com',\n 'cabacabana.com',\n 'cableone.net',\n 'caere.it',\n 'cairomail.com',\n 'cais.net',\n 'callnetuk.com',\n 'callsign.net',\n 'caltanet.it',\n 'camidge.com',\n 'canada-11.com',\n 'canada.com',\n 'canadianmail.com',\n 'canoemail.com',\n 'canwetalk.com',\n 'capu.net',\n 'caramail.com',\n 'care2.com',\n 'careerbuildermail.com',\n 'carioca.net',\n 'cartestraina.ro',\n 'casablancaresort.com',\n 'casino.com',\n 'catcha.com',\n 'catholic.org',\n 'catlover.com',\n 'catsrule.garfield.com',\n 'ccnmail.com',\n 'cd2.com',\n 'celineclub.com',\n 'celtic.com',\n 'centoper.it',\n 'centralpets.com',\n 'centrum.cz',\n 'centrum.sk',\n 'centurytel.net',\n 'cfl.rr.com',\n 'cgac.es',\n 'chaiyomail.com',\n 'chance2mail.com',\n 'chandrasekar.net',\n 'charm.net',\n 'charmedmail.com',\n 'charter.net',\n 'chat.ru',\n 'chattown.com',\n 'chauhanweb.com',\n 'check.com',\n 'check1check.com',\n 'cheerful.com',\n 'chek.com',\n 'chello.nl',\n 'chemist.com',\n 'chequemail.com',\n 'cheyenneweb.com',\n 'chez.com',\n 'chickmail.com',\n 'china.net.vg',\n 'chinalook.com',\n 'chirk.com',\n 'chocaholic.com.au',\n 'christianmail.net',\n 'churchusa.com',\n 'cia-agent.com',\n 'cia.hu',\n 'ciaoweb.it',\n 'cicciociccio.com',\n 'cincinow.net',\n 'citeweb.net',\n 'citlink.net',\n 'city-of-bath.org',\n 'city-of-birmingham.com',\n 'city-of-brighton.org',\n 'city-of-cambridge.com',\n 'city-of-coventry.com',\n 'city-of-edinburgh.com',\n 'city-of-lichfield.com',\n 'city-of-lincoln.com',\n 'city-of-liverpool.com',\n 'city-of-manchester.com',\n 'city-of-nottingham.com',\n 'city-of-oxford.com',\n 'city-of-swansea.com',\n 'city-of-westminster.com',\n 'city-of-westminster.net',\n 'city-of-york.net',\n 'city2city.com',\n 'cityofcardiff.net',\n 'cityoflondon.org',\n 'claramail.com',\n 'classicalfan.com',\n 'classicmail.co.za',\n 'clerk.com',\n 'cliffhanger.com',\n 'close2you.net',\n 'club-internet.fr',\n 'club4x4.net',\n 'clubalfa.com',\n 'clubbers.net',\n 'clubducati.com',\n 'clubhonda.net',\n 'clubvdo.net',\n 'cluemail.com',\n 'cmpmail.com',\n 'cnnsimail.com',\n 'codec.ro',\n 'coder.hu',\n 'coid.biz',\n 'coldmail.com',\n 'collectiblesuperstore.com',\n 'collegebeat.com',\n 'collegeclub.com',\n 'collegemail.com',\n 'colleges.com',\n 'columbus.rr.com',\n 'columbusrr.com',\n 'columnist.com',\n 'comcast.net',\n 'comic.com',\n 'communityconnect.com',\n 'comprendemail.com',\n 'compuserve.com',\n 'computer-freak.com',\n 'computermail.net',\n 'concentric.net',\n 'conexcol.com',\n 'conk.com',\n 'connect4free.net',\n 'connectbox.com',\n 'conok.com',\n 'consultant.com',\n 'cookiemonster.com',\n 'cool.br',\n 'coolgoose.ca',\n 'coolgoose.com',\n 'coolkiwi.com',\n 'coollist.com',\n 'coolmail.com',\n 'coolmail.net',\n 'coolsend.com',\n 'cooooool.com',\n 'cooperation.net',\n 'cooperationtogo.net',\n 'copacabana.com',\n 'cornells.com',\n 'cornerpub.com',\n 'corporatedirtbag.com',\n 'correo.terra.com.gt',\n 'cortinet.com',\n 'cotas.net',\n 'counsellor.com',\n 'countrylover.com',\n 'covad.net',\n 'cox.net',\n 'coxinet.net',\n 'coxmail.com',\n 'cpaonline.net',\n 'cracker.hu',\n 'crazedanddazed.com',\n 'crazysexycool.com',\n 'cristianemail.com',\n 'critterpost.com',\n 'croeso.com',\n 'crosshairs.com',\n 'crosslink.net',\n 'crosswinds.net',\n 'crwmail.com',\n 'cry4helponline.com',\n 'cs.com',\n 'csi.com',\n 'csinibaba.hu',\n 'cuemail.com',\n 'curio-city.com',\n 'cute-girl.com',\n 'cuteandcuddly.com',\n 'cutey.com',\n 'cww.de',\n 'cyber-africa.net',\n 'cyber4all.com',\n 'cyberbabies.com',\n 'cybercafemaui.com',\n 'cyberdude.com',\n 'cyberforeplay.net',\n 'cybergal.com',\n 'cybergrrl.com',\n 'cyberinbox.com',\n 'cyberleports.com',\n 'cybermail.net',\n 'cybernet.it',\n 'cyberspace-asia.com',\n 'cybertrains.org',\n 'cyclefanz.com',\n 'cynetcity.com',\n 'dabsol.net',\n 'dadacasa.com',\n 'daha.com',\n 'dailypioneer.com',\n 'dallas.theboys.com',\n 'dangerous-minds.com',\n 'dansegulvet.com',\n 'data54.com',\n 'daum.net',\n 'davegracey.com',\n 'dawnsonmail.com',\n 'dawsonmail.com',\n 'dazedandconfused.com',\n 'dbzmail.com',\n 'dca.net',\n 'dcemail.com',\n 'deadlymob.org',\n 'deal-maker.com',\n 'dearriba.com',\n 'death-star.com',\n 'dejanews.com',\n 'deliveryman.com',\n 'deltanet.com',\n 'deneg.net',\n 'depechemode.com',\n 'deseretmail.com',\n 'desertmail.com',\n 'desilota.com',\n 'deskmail.com',\n 'deskpilot.com',\n 'destin.com',\n 'detik.com',\n 'deutschland-net.com',\n 'devotedcouples.com',\n 'dfwatson.com',\n 'di-ve.com',\n 'digibel.be',\n 'diplomats.com',\n 'direcway.com',\n 'dirtracer.com',\n 'discofan.com',\n 'discovery.com',\n 'discoverymail.com',\n 'disinfo.net',\n 'dmailman.com',\n 'dmv.com',\n 'dnsmadeeasy.com',\n 'doctor.com',\n 'dog.com',\n 'doglover.com',\n 'dogmail.co.uk',\n 'dogsnob.net',\n 'doityourself.com',\n 'doneasy.com',\n 'donjuan.com',\n 'dontgotmail.com',\n 'dontmesswithtexas.com',\n 'doramail.com',\n 'dostmail.com',\n 'dotcom.fr',\n 'dott.it',\n 'dplanet.ch',\n 'dr.com',\n 'dragoncon.net',\n 'dragracer.com',\n 'dropzone.com',\n 'drotposta.hu',\n 'dslextreme.com',\n 'dubaimail.com',\n 'dublin.com',\n 'dublin.ie',\n 'dunlopdriver.com',\n 'dunloprider.com',\n 'duno.com',\n 'dwp.net',\n 'dygo.com',\n 'dynamitemail.com',\n 'e-apollo.lv',\n 'e-mail.dk',\n 'e-mail.ru',\n 'e-mailanywhere.com',\n 'e-mails.ru',\n 'e-tapaal.com',\n 'earthalliance.com',\n 'earthcam.net',\n 'earthdome.com',\n 'earthling.net',\n 'earthlink.net',\n 'earthonline.net',\n 'eastcoast.co.za',\n 'eastmail.com',\n 'easy.to',\n 'easypost.com',\n 'eatmydirt.com',\n 'ecardmail.com',\n 'ecbsolutions.net',\n 'echina.com',\n 'ecompare.com',\n 'edge.net',\n 'edmail.com',\n 'ednatx.com',\n 'edtnmail.com',\n 'educacao.te.pt',\n 'educastmail.com',\n 'ehmail.com',\n 'eircom.net',\n 'elsitio.com',\n 'elvis.com',\n 'email-london.co.uk',\n 'email.com',\n 'email.cz',\n 'email.ee',\n 'email.it',\n 'email.nu',\n 'email.ro',\n 'email.ru',\n 'email.si',\n 'email.women.com',\n 'email2me.net',\n 'emailacc.com',\n 'emailaccount.com',\n 'emailchoice.com',\n 'emailcorner.net',\n 'emailem.com',\n 'emailengine.net',\n 'emailforyou.net',\n 'emailgroups.net',\n 'emailpinoy.com',\n 'emailplanet.com',\n 'emails.ru',\n 'emailuser.net',\n 'emailx.net',\n 'ematic.com',\n 'embarqmail.com',\n 'emumail.com',\n 'end-war.com',\n 'enel.net',\n 'engineer.com',\n 'england.com',\n 'england.edu',\n 'enter.net',\n 'epatra.com',\n 'epix.net',\n 'epost.de',\n 'eposta.hu',\n 'eqqu.com',\n 'eramail.co.za',\n 'eresmas.com',\n 'eriga.lv',\n 'erols.com',\n 'estranet.it',\n 'ethos.st',\n 'etoast.com',\n 'etrademail.com',\n 'eudoramail.com',\n 'europe.com',\n 'euroseek.com',\n 'every1.net',\n 'everyday.com.kh',\n 'everyone.net',\n 'examnotes.net',\n 'excite.co.jp',\n 'excite.com',\n 'excite.it',\n 'execs.com',\n 'expressasia.com',\n 'extenda.net',\n 'extended.com',\n 'eyou.com',\n 'ezcybersearch.com',\n 'ezmail.egine.com',\n 'ezmail.ru',\n 'ezrs.com',\n 'ezy.net',\n 'f1fans.net',\n 'facebook.com',\n 'fan.com',\n 'fan.theboys.com',\n 'fansonlymail.com',\n 'fantasticmail.com',\n 'farang.net',\n 'faroweb.com',\n 'fastem.com',\n 'fastemail.us',\n 'fastemailer.com',\n 'fastermail.com',\n 'fastimap.com',\n 'fastmail.fm',\n 'fastmailbox.net',\n 'fastmessaging.com',\n 'fatcock.net',\n 'fathersrightsne.org',\n 'fbi-agent.com',\n 'fbi.hu',\n 'fcc.net',\n 'federalcontractors.com',\n 'felicity.com',\n 'felicitymail.com',\n 'femenino.com',\n 'fetchmail.co.uk',\n 'fetchmail.com',\n 'feyenoorder.com',\n 'ffanet.com',\n 'fiberia.com',\n 'fibertel.com.ar',\n 'filipinolinks.com',\n 'financemail.net',\n 'financier.com',\n 'findmail.com',\n 'finebody.com',\n 'finfin.com',\n 'fire-brigade.com',\n 'fishburne.org',\n 'flashcom.net',\n 'flashemail.com',\n 'flashmail.com',\n 'flashmail.net',\n 'flipcode.com',\n 'fmail.co.uk',\n 'fmailbox.com',\n 'fmgirl.com',\n 'fmguy.com',\n 'fnbmail.co.za',\n 'fnmail.com',\n 'folkfan.com',\n 'foodmail.com',\n 'football.theboys.com',\n 'footballmail.com',\n 'for-president.com',\n 'forfree.at',\n 'forpresident.com',\n 'forthnet.gr',\n 'fortuncity.com',\n 'fortunecity.com',\n 'forum.dk',\n 'foxmail.com',\n 'free-org.com',\n 'free.com.pe',\n 'free.fr',\n 'freeaccess.nl',\n 'freeaccount.com',\n 'freeandsingle.com',\n 'freedom.usa.com',\n 'freedomlover.com',\n 'freegates.be',\n 'freeghana.com',\n 'freeler.nl',\n 'freemail.c3.hu',\n 'freemail.com.au',\n 'freemail.com.pk',\n 'freemail.de',\n 'freemail.et',\n 'freemail.gr',\n 'freemail.hu',\n 'freemail.it',\n 'freemail.lt',\n 'freemail.nl',\n 'freemail.org.mk',\n 'freenet.de',\n 'freenet.kg',\n 'freeola.com',\n 'freeola.net',\n 'freeserve.co.uk',\n 'freestamp.com',\n 'freestart.hu',\n 'freesurf.fr',\n 'freesurf.nl',\n 'freeuk.com',\n 'freeuk.net',\n 'freeukisp.co.uk',\n 'freeweb.org',\n 'freewebemail.com',\n 'freeyellow.com',\n 'freezone.co.uk',\n 'fresnomail.com',\n 'friends-cafe.com',\n 'friendsfan.com',\n 'from-africa.com',\n 'from-america.com',\n 'from-argentina.com',\n 'from-asia.com',\n 'from-australia.com',\n 'from-belgium.com',\n 'from-brazil.com',\n 'from-canada.com',\n 'from-china.net',\n 'from-england.com',\n 'from-europe.com',\n 'from-france.net',\n 'from-germany.net',\n 'from-holland.com',\n 'from-israel.com',\n 'from-italy.net',\n 'from-japan.net',\n 'from-korea.com',\n 'from-mexico.com',\n 'from-outerspace.com',\n 'from-russia.com',\n 'from-spain.net',\n 'fromalabama.com',\n 'fromalaska.com',\n 'fromarizona.com',\n 'fromarkansas.com',\n 'fromcalifornia.com',\n 'fromcolorado.com',\n 'fromconnecticut.com',\n 'fromdelaware.com',\n 'fromflorida.net',\n 'fromgeorgia.com',\n 'fromhawaii.net',\n 'fromidaho.com',\n 'fromillinois.com',\n 'fromindiana.com',\n 'fromiowa.com',\n 'fromjupiter.com',\n 'fromkansas.com',\n 'fromkentucky.com',\n 'fromlouisiana.com',\n 'frommaine.net',\n 'frommaryland.com',\n 'frommassachusetts.com',\n 'frommiami.com',\n 'frommichigan.com',\n 'fromminnesota.com',\n 'frommississippi.com',\n 'frommissouri.com',\n 'frommontana.com',\n 'fromnebraska.com',\n 'fromnevada.com',\n 'fromnewhampshire.com',\n 'fromnewjersey.com',\n 'fromnewmexico.com',\n 'fromnewyork.net',\n 'fromnorthcarolina.com',\n 'fromnorthdakota.com',\n 'fromohio.com',\n 'fromoklahoma.com',\n 'fromoregon.net',\n 'frompennsylvania.com',\n 'fromrhodeisland.com',\n 'fromru.com',\n 'fromsouthcarolina.com',\n 'fromsouthdakota.com',\n 'fromtennessee.com',\n 'fromtexas.com',\n 'fromthestates.com',\n 'fromutah.com',\n 'fromvermont.com',\n 'fromvirginia.com',\n 'fromwashington.com',\n 'fromwashingtondc.com',\n 'fromwestvirginia.com',\n 'fromwisconsin.com',\n 'fromwyoming.com',\n 'front.ru',\n 'frontier.com',\n 'frontiernet.net',\n 'frostbyte.uk.net',\n 'fsmail.net',\n 'ftml.net',\n 'fullchannel.net',\n 'fullmail.com',\n 'funkfan.com',\n 'fuorissimo.com',\n 'furnitureprovider.com',\n 'fuse.net',\n 'fut.es',\n 'fwnb.com',\n 'fxsmails.com',\n 'galamb.net',\n 'galaxy5.com',\n 'gamebox.net',\n 'gamegeek.com',\n 'games.com',\n 'gamespotmail.com',\n 'garbage.com',\n 'gardener.com',\n 'gateway.net',\n 'gawab.com',\n 'gaybrighton.co.uk',\n 'gaza.net',\n 'gazeta.pl',\n 'gazibooks.com',\n 'gci.net',\n 'gee-wiz.com',\n 'geecities.com',\n 'geek.com',\n 'geek.hu',\n 'geeklife.com',\n 'general-hospital.com',\n 'geocities.com',\n 'geologist.com',\n 'geopia.com',\n 'gh2000.com',\n 'ghanamail.com',\n 'ghostmail.com',\n 'giantsfan.com',\n 'giga4u.de',\n 'gigileung.org',\n 'givepeaceachance.com',\n 'glay.org',\n 'glendale.net',\n 'globalfree.it',\n 'globalpagan.com',\n 'globalsite.com.br',\n 'globo.com',\n 'globomail.com',\n 'gmail.com',\n 'gmx.at',\n 'gmx.com',\n 'gmx.de',\n 'gmx.fr',\n 'gmx.li',\n 'gmx.net',\n 'gnwmail.com',\n 'go.com',\n 'go.ro',\n 'go.ru',\n 'go2.com.py',\n 'go2net.com',\n 'gocollege.com',\n 'gocubs.com',\n 'gofree.co.uk',\n 'goldenmail.ru',\n 'goldmail.ru',\n 'golfemail.com',\n 'golfmail.be',\n 'gonavy.net',\n 'goodstick.com',\n 'google.com',\n 'googlemail.com',\n 'goplay.com',\n 'gorontalo.net',\n 'gospelfan.com',\n 'gothere.uk.com',\n 'gotmail.com',\n 'gotomy.com',\n 'govolsfan.com',\n 'gportal.hu',\n 'grabmail.com',\n 'graffiti.net',\n 'gramszu.net',\n 'grapplers.com',\n 'gratisweb.com',\n 'grungecafe.com',\n 'gtemail.net',\n 'gti.net',\n 'gtmc.net',\n 'gua.net',\n 'guessmail.com',\n 'guju.net',\n 'gurlmail.com',\n 'guy.com',\n 'guy2.com',\n 'guyanafriends.com',\n 'gyorsposta.com',\n 'gyorsposta.hu',\n 'hackermail.net',\n 'hailmail.net',\n 'hairdresser.net',\n 'hamptonroads.com',\n 'handbag.com',\n 'handleit.com',\n 'hang-ten.com',\n 'hanmail.net',\n 'happemail.com',\n 'happycounsel.com',\n 'happypuppy.com',\n 'hardcorefreak.com',\n 'hawaii.rr.com',\n 'hawaiiantel.net',\n 'headbone.com',\n 'heartthrob.com',\n 'heerschap.com',\n 'heesun.net',\n 'hehe.com',\n 'hello.hu',\n 'hello.net.au',\n 'hello.to',\n 'helter-skelter.com',\n 'hempseed.com',\n 'herediano.com',\n 'heremail.com',\n 'herono1.com',\n 'hetnet.nl',\n 'hey.to',\n 'hhdevel.com',\n 'highmilton.com',\n 'highquality.com',\n 'highveldmail.co.za',\n 'hiphopfan.com',\n 'hispavista.com',\n 'hitthe.net',\n 'hkg.net',\n 'hkstarphoto.com',\n 'hockeymail.com',\n 'hollywoodkids.com',\n 'home-email.com',\n 'home.nl',\n 'home.no.net',\n 'home.ro',\n 'home.se',\n 'homeart.com',\n 'homelocator.com',\n 'homemail.com',\n 'homestead.com',\n 'homeworkcentral.com',\n 'hongkong.com',\n 'hookup.net',\n 'hoopsmail.com',\n 'horrormail.com',\n 'host-it.com.sg',\n 'hot-shot.com',\n 'hot.ee',\n 'hotbot.com',\n 'hotbrev.com',\n 'hotepmail.com',\n 'hotfire.net',\n 'hotletter.com',\n 'hotmail.be',\n 'hotmail.co.il',\n 'hotmail.co.uk',\n 'hotmail.com',\n 'hotmail.com.ar',\n 'hotmail.com.br',\n 'hotmail.com.mx',\n 'hotmail.de',\n 'hotmail.es',\n 'hotmail.fr',\n 'hotmail.it',\n 'hotmail.kg',\n 'hotmail.kz',\n 'hotmail.ru',\n 'hotpop.com',\n 'hotpop3.com',\n 'hotvoice.com',\n 'housefancom',\n 'housemail.com',\n 'hsuchi.net',\n 'html.tou.com',\n 'hughes.net',\n 'hunsa.com',\n 'hush.com',\n 'hushmail.com',\n 'hypernautica.com',\n 'i-connect.com',\n 'i-france.com',\n 'i-mail.com.au',\n 'i-p.com',\n 'i-plus.net',\n 'i.am',\n 'i12.com',\n 'iamawoman.com',\n 'iamwaiting.com',\n 'iamwasted.com',\n 'iamyours.com',\n 'ibm.net',\n 'icestorm.com',\n 'icloud.com',\n 'icmsconsultants.com',\n 'icq.com',\n 'icqmail.com',\n 'icrazy.com',\n 'id-base.com',\n 'ididitmyway.com',\n 'idirect.com',\n 'iespana.es',\n 'ifoward.com',\n 'ig.com.br',\n 'ignazio.it',\n 'ignmail.com',\n 'ihateclowns.com',\n 'ihwy.com',\n 'iinet.net.au',\n 'ijustdontcare.com',\n 'ilovechocolate.com',\n 'ilovejesus.com',\n 'ilovethemovies.com',\n 'ilovetocollect.net',\n 'ilse.nl',\n 'imaginemail.com',\n 'imail.org',\n 'imail.ru',\n 'imailbox.com',\n 'imel.org',\n 'imneverwrong.com',\n 'imposter.co.uk',\n 'imstressed.com',\n 'imtoosexy.com',\n 'in-box.net',\n 'iname.com',\n 'inbox.com',\n 'inbox.net',\n 'inbox.ru',\n 'incamail.com',\n 'incredimail.com',\n 'indexa.fr',\n 'india.com',\n 'indiatimes.com',\n 'indo-mail.com',\n 'indocities.com',\n 'indomail.com',\n 'indyracers.com',\n 'info-media.de',\n 'info66.com',\n 'infohq.com',\n 'infomail.es',\n 'infomart.or.jp',\n 'infospacemail.com',\n 'infovia.com.ar',\n 'inicia.es',\n 'inmail.sk',\n 'innocent.com',\n 'inorbit.com',\n 'insidebaltimore.net',\n 'insight.rr.com',\n 'insurer.com',\n 'integra.net',\n 'interaccess.com',\n 'interburp.com',\n 'interfree.it',\n 'interia.pl',\n 'interlap.com.ar',\n 'intermail.co.il',\n 'internet-club.com',\n 'internet-police.com',\n 'internetbiz.com',\n 'internetdrive.com',\n 'internetegypt.com',\n 'internetemails.net',\n 'internetmailing.net',\n 'internetmci.com',\n 'investormail.com',\n 'inwind.it',\n 'iobox.com',\n 'iobox.fi',\n 'iol.it',\n 'ionet.net',\n 'iowaemail.com',\n 'ip3.com',\n 'iprimus.com.au',\n 'iqemail.com',\n 'irangate.net',\n 'iraqmail.com',\n 'ireland.com',\n 'irj.hu',\n 'isellcars.com',\n 'islamonline.net',\n 'isleuthmail.com',\n 'ismart.net',\n 'isonfire.com',\n 'isp9.net',\n 'itelefonica.com.br',\n 'itloox.com',\n 'itmom.com',\n 'itol.com',\n 'ivebeenframed.com',\n 'ivillage.com',\n 'iwan-fals.com',\n 'iwmail.com',\n 'iwon.com',\n 'izadpanah.com',\n 'jahoopa.com',\n 'jakuza.hu',\n 'japan.com',\n 'jaydemail.com',\n 'jazzandjava.com',\n 'jazzfan.com',\n 'jazzgame.com',\n 'jerusalemmail.com',\n 'jetemail.net',\n 'jewishmail.com',\n 'jippii.fi',\n 'jmail.co.za',\n 'joinme.com',\n 'jokes.com',\n 'jordanmail.com',\n 'journalist.com',\n 'jovem.te.pt',\n 'joymail.com',\n 'jpopmail.com',\n 'jubiimail.dk',\n 'jump.com',\n 'jumpy.it',\n 'juniormail.com',\n 'juno.com',\n 'justemail.net',\n 'justicemail.com',\n 'kaazoo.com',\n 'kaixo.com',\n 'kalpoint.com',\n 'kansascity.com',\n 'kapoorweb.com',\n 'karachian.com',\n 'karachioye.com',\n 'karbasi.com',\n 'katamail.com',\n 'kayafmmail.co.za',\n 'kbjrmail.com',\n 'kcks.com',\n 'keg-party.com',\n 'keko.com.ar',\n 'kellychen.com',\n 'keromail.com',\n 'keyemail.com',\n 'kgb.hu',\n 'khosropour.com',\n 'kickassmail.com',\n 'killermail.com',\n 'kimo.com',\n 'kinki-kids.com',\n 'kittymail.com',\n 'kitznet.at',\n 'kiwibox.com',\n 'kiwitown.com',\n 'kmail.com.au',\n 'konx.com',\n 'korea.com',\n 'kozmail.com',\n 'krongthip.com',\n 'krunis.com',\n 'ksanmail.com',\n 'ksee24mail.com',\n 'kube93mail.com',\n 'kukamail.com',\n 'kumarweb.com',\n 'kuwait-mail.com',\n 'la.com',\n 'ladymail.cz',\n 'lagerlouts.com',\n 'lahoreoye.com',\n 'lakmail.com',\n 'lamer.hu',\n 'land.ru',\n 'lankamail.com',\n 'laposte.net',\n 'latemodels.com',\n 'latinmail.com',\n 'latino.com',\n 'lavabit.com',\n 'law.com',\n 'lawyer.com',\n 'leehom.net',\n 'legalactions.com',\n 'legislator.com',\n 'leonlai.net',\n 'letsgomets.net',\n 'letterbox.com',\n 'levele.com',\n 'levele.hu',\n 'lex.bg',\n 'lexis-nexis-mail.com',\n 'libero.it',\n 'liberomail.com',\n 'lick101.com',\n 'linkmaster.com',\n 'linktrader.com',\n 'linuxfreemail.com',\n 'linuxmail.org',\n 'lionsfan.com.au',\n 'liontrucks.com',\n 'liquidinformation.net',\n 'list.ru',\n 'littleblueroom.com',\n 'live.be',\n 'live.ca',\n 'live.co.uk',\n 'live.com',\n 'live.com.ar',\n 'live.com.au',\n 'live.com.mx',\n 'live.de',\n 'live.fr',\n 'live.it',\n 'live.nl',\n 'liverpoolfans.com',\n 'llandudno.com',\n 'llangollen.com',\n 'lmxmail.sk',\n 'lobbyist.com',\n 'localbar.com',\n 'london.com',\n 'loobie.com',\n 'looksmart.co.uk',\n 'looksmart.com',\n 'looksmart.com.au',\n 'lopezclub.com',\n 'louiskoo.com',\n 'love.com',\n 'love.cz',\n 'loveable.com',\n 'lovelygirl.net',\n 'lovemail.com',\n 'lover-boy.com',\n 'lovergirl.com',\n 'lovingjesus.com',\n 'lowandslow.com',\n 'luso.pt',\n 'luukku.com',\n 'lycos.co.uk',\n 'lycos.com',\n 'lycos.es',\n 'lycos.it',\n 'lycos.ne.jp',\n 'lycosemail.com',\n 'lycosmail.com',\n 'm-a-i-l.com',\n 'm-hmail.com',\n 'm4.org',\n 'mac.com',\n 'macbox.com',\n 'macfreak.com',\n 'machinecandy.com',\n 'macmail.com',\n 'madcreations.com',\n 'madrid.com',\n 'maffia.hu',\n 'magicmail.co.za',\n 'mahmoodweb.com',\n 'mail-awu.de',\n 'mail-box.cz',\n 'mail-center.com',\n 'mail-central.com',\n 'mail-page.com',\n 'mail.austria.com',\n 'mail.az',\n 'mail.be',\n 'mail.bulgaria.com',\n 'mail.byte.it',\n 'mail.co.za',\n 'mail.com',\n 'mail.ee',\n 'mail.entrepeneurmag.com',\n 'mail.freetown.com',\n 'mail.gr',\n 'mail.hitthebeach.com',\n 'mail.kmsp.com',\n 'mail.md',\n 'mail.nu',\n 'mail.org.uk',\n 'mail.pf',\n 'mail.pharmacy.com',\n 'mail.pt',\n 'mail.r-o-o-t.com',\n 'mail.ru',\n 'mail.salu.net',\n 'mail.sisna.com',\n 'mail.spaceports.com',\n 'mail.theboys.com',\n 'mail.usa.com',\n 'mail.vasarhely.hu',\n 'mail15.com',\n 'mail1st.com',\n 'mail2007.com',\n 'mail2aaron.com',\n 'mail2abby.com',\n 'mail2abc.com',\n 'mail2actor.com',\n 'mail2admiral.com',\n 'mail2adorable.com',\n 'mail2adoration.com',\n 'mail2adore.com',\n 'mail2adventure.com',\n 'mail2aeolus.com',\n 'mail2aether.com',\n 'mail2affection.com',\n 'mail2afghanistan.com',\n 'mail2africa.com',\n 'mail2agent.com',\n 'mail2aha.com',\n 'mail2ahoy.com',\n 'mail2aim.com',\n 'mail2air.com',\n 'mail2airbag.com',\n 'mail2airforce.com',\n 'mail2airport.com',\n 'mail2alabama.com',\n 'mail2alan.com',\n 'mail2alaska.com',\n 'mail2albania.com',\n 'mail2alcoholic.com',\n 'mail2alec.com',\n 'mail2alexa.com',\n 'mail2algeria.com',\n 'mail2alicia.com',\n 'mail2alien.com',\n 'mail2allan.com',\n 'mail2allen.com',\n 'mail2allison.com',\n 'mail2alpha.com',\n 'mail2alyssa.com',\n 'mail2amanda.com',\n 'mail2amazing.com',\n 'mail2amber.com',\n 'mail2america.com',\n 'mail2american.com',\n 'mail2andorra.com',\n 'mail2andrea.com',\n 'mail2andy.com',\n 'mail2anesthesiologist.com',\n 'mail2angela.com',\n 'mail2angola.com',\n 'mail2ann.com',\n 'mail2anna.com',\n 'mail2anne.com',\n 'mail2anthony.com',\n 'mail2anything.com',\n 'mail2aphrodite.com',\n 'mail2apollo.com',\n 'mail2april.com',\n 'mail2aquarius.com',\n 'mail2arabia.com',\n 'mail2arabic.com',\n 'mail2architect.com',\n 'mail2ares.com',\n 'mail2argentina.com',\n 'mail2aries.com',\n 'mail2arizona.com',\n 'mail2arkansas.com',\n 'mail2armenia.com',\n 'mail2army.com',\n 'mail2arnold.com',\n 'mail2art.com',\n 'mail2artemus.com',\n 'mail2arthur.com',\n 'mail2artist.com',\n 'mail2ashley.com',\n 'mail2ask.com',\n 'mail2astronomer.com',\n 'mail2athena.com',\n 'mail2athlete.com',\n 'mail2atlas.com',\n 'mail2atom.com',\n 'mail2attitude.com',\n 'mail2auction.com',\n 'mail2aunt.com',\n 'mail2australia.com',\n 'mail2austria.com',\n 'mail2azerbaijan.com',\n 'mail2baby.com',\n 'mail2bahamas.com',\n 'mail2bahrain.com',\n 'mail2ballerina.com',\n 'mail2ballplayer.com',\n 'mail2band.com',\n 'mail2bangladesh.com',\n 'mail2bank.com',\n 'mail2banker.com',\n 'mail2bankrupt.com',\n 'mail2baptist.com',\n 'mail2bar.com',\n 'mail2barbados.com',\n 'mail2barbara.com',\n 'mail2barter.com',\n 'mail2basketball.com',\n 'mail2batter.com',\n 'mail2beach.com',\n 'mail2beast.com',\n 'mail2beatles.com',\n 'mail2beauty.com',\n 'mail2becky.com',\n 'mail2beijing.com',\n 'mail2belgium.com',\n 'mail2belize.com',\n 'mail2ben.com',\n 'mail2bernard.com',\n 'mail2beth.com',\n 'mail2betty.com',\n 'mail2beverly.com',\n 'mail2beyond.com',\n 'mail2biker.com',\n 'mail2bill.com',\n 'mail2billionaire.com',\n 'mail2billy.com',\n 'mail2bio.com',\n 'mail2biologist.com',\n 'mail2black.com',\n 'mail2blackbelt.com',\n 'mail2blake.com',\n 'mail2blind.com',\n 'mail2blonde.com',\n 'mail2blues.com',\n 'mail2bob.com',\n 'mail2bobby.com',\n 'mail2bolivia.com',\n 'mail2bombay.com',\n 'mail2bonn.com',\n 'mail2bookmark.com',\n 'mail2boreas.com',\n 'mail2bosnia.com',\n 'mail2boston.com',\n 'mail2botswana.com',\n 'mail2bradley.com',\n 'mail2brazil.com',\n 'mail2breakfast.com',\n 'mail2brian.com',\n 'mail2bride.com',\n 'mail2brittany.com',\n 'mail2broker.com',\n 'mail2brook.com',\n 'mail2bruce.com',\n 'mail2brunei.com',\n 'mail2brunette.com',\n 'mail2brussels.com',\n 'mail2bryan.com',\n 'mail2bug.com',\n 'mail2bulgaria.com',\n 'mail2business.com',\n 'mail2buy.com',\n 'mail2ca.com',\n 'mail2california.com',\n 'mail2calvin.com',\n 'mail2cambodia.com',\n 'mail2cameroon.com',\n 'mail2canada.com',\n 'mail2cancer.com',\n 'mail2capeverde.com',\n 'mail2capricorn.com',\n 'mail2cardinal.com',\n 'mail2cardiologist.com',\n 'mail2care.com',\n 'mail2caroline.com',\n 'mail2carolyn.com',\n 'mail2casey.com',\n 'mail2cat.com',\n 'mail2caterer.com',\n 'mail2cathy.com',\n 'mail2catlover.com',\n 'mail2catwalk.com',\n 'mail2cell.com',\n 'mail2chad.com',\n 'mail2champaign.com',\n 'mail2charles.com',\n 'mail2chef.com',\n 'mail2chemist.com',\n 'mail2cherry.com',\n 'mail2chicago.com',\n 'mail2chile.com',\n 'mail2china.com',\n 'mail2chinese.com',\n 'mail2chocolate.com',\n 'mail2christian.com',\n 'mail2christie.com',\n 'mail2christmas.com',\n 'mail2christy.com',\n 'mail2chuck.com',\n 'mail2cindy.com',\n 'mail2clark.com',\n 'mail2classifieds.com',\n 'mail2claude.com',\n 'mail2cliff.com',\n 'mail2clinic.com',\n 'mail2clint.com',\n 'mail2close.com',\n 'mail2club.com',\n 'mail2coach.com',\n 'mail2coastguard.com',\n 'mail2colin.com',\n 'mail2college.com',\n 'mail2colombia.com',\n 'mail2color.com',\n 'mail2colorado.com',\n 'mail2columbia.com',\n 'mail2comedian.com',\n 'mail2composer.com',\n 'mail2computer.com',\n 'mail2computers.com',\n 'mail2concert.com',\n 'mail2congo.com',\n 'mail2connect.com',\n 'mail2connecticut.com',\n 'mail2consultant.com',\n 'mail2convict.com',\n 'mail2cook.com',\n 'mail2cool.com',\n 'mail2cory.com',\n 'mail2costarica.com',\n 'mail2country.com',\n 'mail2courtney.com',\n 'mail2cowboy.com',\n 'mail2cowgirl.com',\n 'mail2craig.com',\n 'mail2crave.com',\n 'mail2crazy.com',\n 'mail2create.com',\n 'mail2croatia.com',\n 'mail2cry.com',\n 'mail2crystal.com',\n 'mail2cuba.com',\n 'mail2culture.com',\n 'mail2curt.com',\n 'mail2customs.com',\n 'mail2cute.com',\n 'mail2cutey.com',\n 'mail2cynthia.com',\n 'mail2cyprus.com',\n 'mail2czechrepublic.com',\n 'mail2dad.com',\n 'mail2dale.com',\n 'mail2dallas.com',\n 'mail2dan.com',\n 'mail2dana.com',\n 'mail2dance.com',\n 'mail2dancer.com',\n 'mail2danielle.com',\n 'mail2danny.com',\n 'mail2darlene.com',\n 'mail2darling.com',\n 'mail2darren.com',\n 'mail2daughter.com',\n 'mail2dave.com',\n 'mail2dawn.com',\n 'mail2dc.com',\n 'mail2dealer.com',\n 'mail2deanna.com',\n 'mail2dearest.com',\n 'mail2debbie.com',\n 'mail2debby.com',\n 'mail2deer.com',\n 'mail2delaware.com',\n 'mail2delicious.com',\n 'mail2demeter.com',\n 'mail2democrat.com',\n 'mail2denise.com',\n 'mail2denmark.com',\n 'mail2dennis.com',\n 'mail2dentist.com',\n 'mail2derek.com',\n 'mail2desert.com',\n 'mail2devoted.com',\n 'mail2devotion.com',\n 'mail2diamond.com',\n 'mail2diana.com',\n 'mail2diane.com',\n 'mail2diehard.com',\n 'mail2dilemma.com',\n 'mail2dillon.com',\n 'mail2dinner.com',\n 'mail2dinosaur.com',\n 'mail2dionysos.com',\n 'mail2diplomat.com',\n 'mail2director.com',\n 'mail2dirk.com',\n 'mail2disco.com',\n 'mail2dive.com',\n 'mail2diver.com',\n 'mail2divorced.com',\n 'mail2djibouti.com',\n 'mail2doctor.com',\n 'mail2doglover.com',\n 'mail2dominic.com',\n 'mail2dominica.com',\n 'mail2dominicanrepublic.com',\n 'mail2don.com',\n 'mail2donald.com',\n 'mail2donna.com',\n 'mail2doris.com',\n 'mail2dorothy.com',\n 'mail2doug.com',\n 'mail2dough.com',\n 'mail2douglas.com',\n 'mail2dow.com',\n 'mail2downtown.com',\n 'mail2dream.com',\n 'mail2dreamer.com',\n 'mail2dude.com',\n 'mail2dustin.com',\n 'mail2dyke.com',\n 'mail2dylan.com',\n 'mail2earl.com',\n 'mail2earth.com',\n 'mail2eastend.com',\n 'mail2eat.com',\n 'mail2economist.com',\n 'mail2ecuador.com',\n 'mail2eddie.com',\n 'mail2edgar.com',\n 'mail2edwin.com',\n 'mail2egypt.com',\n 'mail2electron.com',\n 'mail2eli.com',\n 'mail2elizabeth.com',\n 'mail2ellen.com',\n 'mail2elliot.com',\n 'mail2elsalvador.com',\n 'mail2elvis.com',\n 'mail2emergency.com',\n 'mail2emily.com',\n 'mail2engineer.com',\n 'mail2english.com',\n 'mail2environmentalist.com',\n 'mail2eos.com',\n 'mail2eric.com',\n 'mail2erica.com',\n 'mail2erin.com',\n 'mail2erinyes.com',\n 'mail2eris.com',\n 'mail2eritrea.com',\n 'mail2ernie.com',\n 'mail2eros.com',\n 'mail2estonia.com',\n 'mail2ethan.com',\n 'mail2ethiopia.com',\n 'mail2eu.com',\n 'mail2europe.com',\n 'mail2eurus.com',\n 'mail2eva.com',\n 'mail2evan.com',\n 'mail2evelyn.com',\n 'mail2everything.com',\n 'mail2exciting.com',\n 'mail2expert.com',\n 'mail2fairy.com',\n 'mail2faith.com',\n 'mail2fanatic.com',\n 'mail2fancy.com',\n 'mail2fantasy.com',\n 'mail2farm.com',\n 'mail2farmer.com',\n 'mail2fashion.com',\n 'mail2fat.com',\n 'mail2feeling.com',\n 'mail2female.com',\n 'mail2fever.com',\n 'mail2fighter.com',\n 'mail2fiji.com',\n 'mail2filmfestival.com',\n 'mail2films.com',\n 'mail2finance.com',\n 'mail2finland.com',\n 'mail2fireman.com',\n 'mail2firm.com',\n 'mail2fisherman.com',\n 'mail2flexible.com',\n 'mail2florence.com',\n 'mail2florida.com',\n 'mail2floyd.com',\n 'mail2fly.com',\n 'mail2fond.com',\n 'mail2fondness.com',\n 'mail2football.com',\n 'mail2footballfan.com',\n 'mail2found.com',\n 'mail2france.com',\n 'mail2frank.com',\n 'mail2frankfurt.com',\n 'mail2franklin.com',\n 'mail2fred.com',\n 'mail2freddie.com',\n 'mail2free.com',\n 'mail2freedom.com',\n 'mail2french.com',\n 'mail2freudian.com',\n 'mail2friendship.com',\n 'mail2from.com',\n 'mail2fun.com',\n 'mail2gabon.com',\n 'mail2gabriel.com',\n 'mail2gail.com',\n 'mail2galaxy.com',\n 'mail2gambia.com',\n 'mail2games.com',\n 'mail2gary.com',\n 'mail2gavin.com',\n 'mail2gemini.com',\n 'mail2gene.com',\n 'mail2genes.com',\n 'mail2geneva.com',\n 'mail2george.com',\n 'mail2georgia.com',\n 'mail2gerald.com',\n 'mail2german.com',\n 'mail2germany.com',\n 'mail2ghana.com',\n 'mail2gilbert.com',\n 'mail2gina.com',\n 'mail2girl.com',\n 'mail2glen.com',\n 'mail2gloria.com',\n 'mail2goddess.com',\n 'mail2gold.com',\n 'mail2golfclub.com',\n 'mail2golfer.com',\n 'mail2gordon.com',\n 'mail2government.com',\n 'mail2grab.com',\n 'mail2grace.com',\n 'mail2graham.com',\n 'mail2grandma.com',\n 'mail2grandpa.com',\n 'mail2grant.com',\n 'mail2greece.com',\n 'mail2green.com',\n 'mail2greg.com',\n 'mail2grenada.com',\n 'mail2gsm.com',\n 'mail2guard.com',\n 'mail2guatemala.com',\n 'mail2guy.com',\n 'mail2hades.com',\n 'mail2haiti.com',\n 'mail2hal.com',\n 'mail2handhelds.com',\n 'mail2hank.com',\n 'mail2hannah.com',\n 'mail2harold.com',\n 'mail2harry.com',\n 'mail2hawaii.com',\n 'mail2headhunter.com',\n 'mail2heal.com',\n 'mail2heather.com',\n 'mail2heaven.com',\n 'mail2hebe.com',\n 'mail2hecate.com',\n 'mail2heidi.com',\n 'mail2helen.com',\n 'mail2hell.com',\n 'mail2help.com',\n 'mail2helpdesk.com',\n 'mail2henry.com',\n 'mail2hephaestus.com',\n 'mail2hera.com',\n 'mail2hercules.com',\n 'mail2herman.com',\n 'mail2hermes.com',\n 'mail2hespera.com',\n 'mail2hestia.com',\n 'mail2highschool.com',\n 'mail2hindu.com',\n 'mail2hip.com',\n 'mail2hiphop.com',\n 'mail2holland.com',\n 'mail2holly.com',\n 'mail2hollywood.com',\n 'mail2homer.com',\n 'mail2honduras.com',\n 'mail2honey.com',\n 'mail2hongkong.com',\n 'mail2hope.com',\n 'mail2horse.com',\n 'mail2hot.com',\n 'mail2hotel.com',\n 'mail2houston.com',\n 'mail2howard.com',\n 'mail2hugh.com',\n 'mail2human.com',\n 'mail2hungary.com',\n 'mail2hungry.com',\n 'mail2hygeia.com',\n 'mail2hyperspace.com',\n 'mail2hypnos.com',\n 'mail2ian.com',\n 'mail2ice-cream.com',\n 'mail2iceland.com',\n 'mail2idaho.com',\n 'mail2idontknow.com',\n 'mail2illinois.com',\n 'mail2imam.com',\n 'mail2in.com',\n 'mail2india.com',\n 'mail2indian.com',\n 'mail2indiana.com',\n 'mail2indonesia.com',\n 'mail2infinity.com',\n 'mail2intense.com',\n 'mail2iowa.com',\n 'mail2iran.com',\n 'mail2iraq.com',\n 'mail2ireland.com',\n 'mail2irene.com',\n 'mail2iris.com',\n 'mail2irresistible.com',\n 'mail2irving.com',\n 'mail2irwin.com',\n 'mail2isaac.com',\n 'mail2israel.com',\n 'mail2italian.com',\n 'mail2italy.com',\n 'mail2jackie.com',\n 'mail2jacob.com',\n 'mail2jail.com',\n 'mail2jaime.com',\n 'mail2jake.com',\n 'mail2jamaica.com',\n 'mail2james.com',\n 'mail2jamie.com',\n 'mail2jan.com',\n 'mail2jane.com',\n 'mail2janet.com',\n 'mail2janice.com',\n 'mail2japan.com',\n 'mail2japanese.com',\n 'mail2jasmine.com',\n 'mail2jason.com',\n 'mail2java.com',\n 'mail2jay.com',\n 'mail2jazz.com',\n 'mail2jed.com',\n 'mail2jeffrey.com',\n 'mail2jennifer.com',\n 'mail2jenny.com',\n 'mail2jeremy.com',\n 'mail2jerry.com',\n 'mail2jessica.com',\n 'mail2jessie.com',\n 'mail2jesus.com',\n 'mail2jew.com',\n 'mail2jeweler.com',\n 'mail2jim.com',\n 'mail2jimmy.com',\n 'mail2joan.com',\n 'mail2joann.com',\n 'mail2joanna.com',\n 'mail2jody.com',\n 'mail2joe.com',\n 'mail2joel.com',\n 'mail2joey.com',\n 'mail2john.com',\n 'mail2join.com',\n 'mail2jon.com',\n 'mail2jonathan.com',\n 'mail2jones.com',\n 'mail2jordan.com',\n 'mail2joseph.com',\n 'mail2josh.com',\n 'mail2joy.com',\n 'mail2juan.com',\n 'mail2judge.com',\n 'mail2judy.com',\n 'mail2juggler.com',\n 'mail2julian.com',\n 'mail2julie.com',\n 'mail2jumbo.com',\n 'mail2junk.com',\n 'mail2justin.com',\n 'mail2justme.com',\n 'mail2kansas.com',\n 'mail2karate.com',\n 'mail2karen.com',\n 'mail2karl.com',\n 'mail2karma.com',\n 'mail2kathleen.com',\n 'mail2kathy.com',\n 'mail2katie.com',\n 'mail2kay.com',\n 'mail2kazakhstan.com',\n 'mail2keen.com',\n 'mail2keith.com',\n 'mail2kelly.com',\n 'mail2kelsey.com',\n 'mail2ken.com',\n 'mail2kendall.com',\n 'mail2kennedy.com',\n 'mail2kenneth.com',\n 'mail2kenny.com',\n 'mail2kentucky.com',\n 'mail2kenya.com',\n 'mail2kerry.com',\n 'mail2kevin.com',\n 'mail2kim.com',\n 'mail2kimberly.com',\n 'mail2king.com',\n 'mail2kirk.com',\n 'mail2kiss.com',\n 'mail2kosher.com',\n 'mail2kristin.com',\n 'mail2kurt.com',\n 'mail2kuwait.com',\n 'mail2kyle.com',\n 'mail2kyrgyzstan.com',\n 'mail2la.com',\n 'mail2lacrosse.com',\n 'mail2lance.com',\n 'mail2lao.com',\n 'mail2larry.com',\n 'mail2latvia.com',\n 'mail2laugh.com',\n 'mail2laura.com',\n 'mail2lauren.com',\n 'mail2laurie.com',\n 'mail2lawrence.com',\n 'mail2lawyer.com',\n 'mail2lebanon.com',\n 'mail2lee.com',\n 'mail2leo.com',\n 'mail2leon.com',\n 'mail2leonard.com',\n 'mail2leone.com',\n 'mail2leslie.com',\n 'mail2letter.com',\n 'mail2liberia.com',\n 'mail2libertarian.com',\n 'mail2libra.com',\n 'mail2libya.com',\n 'mail2liechtenstein.com',\n 'mail2life.com',\n 'mail2linda.com',\n 'mail2linux.com',\n 'mail2lionel.com',\n 'mail2lipstick.com',\n 'mail2liquid.com',\n 'mail2lisa.com',\n 'mail2lithuania.com',\n 'mail2litigator.com',\n 'mail2liz.com',\n 'mail2lloyd.com',\n 'mail2lois.com',\n 'mail2lola.com',\n 'mail2london.com',\n 'mail2looking.com',\n 'mail2lori.com',\n 'mail2lost.com',\n 'mail2lou.com',\n 'mail2louis.com',\n 'mail2louisiana.com',\n 'mail2lovable.com',\n 'mail2love.com',\n 'mail2lucky.com',\n 'mail2lucy.com',\n 'mail2lunch.com',\n 'mail2lust.com',\n 'mail2luxembourg.com',\n 'mail2luxury.com',\n 'mail2lyle.com',\n 'mail2lynn.com',\n 'mail2madagascar.com',\n 'mail2madison.com',\n 'mail2madrid.com',\n 'mail2maggie.com',\n 'mail2mail4.com',\n 'mail2maine.com',\n 'mail2malawi.com',\n 'mail2malaysia.com',\n 'mail2maldives.com',\n 'mail2mali.com',\n 'mail2malta.com',\n 'mail2mambo.com',\n 'mail2man.com',\n 'mail2mandy.com',\n 'mail2manhunter.com',\n 'mail2mankind.com',\n 'mail2many.com',\n 'mail2marc.com',\n 'mail2marcia.com',\n 'mail2margaret.com',\n 'mail2margie.com',\n 'mail2marhaba.com',\n 'mail2maria.com',\n 'mail2marilyn.com',\n 'mail2marines.com',\n 'mail2mark.com',\n 'mail2marriage.com',\n 'mail2married.com',\n 'mail2marries.com',\n 'mail2mars.com',\n 'mail2marsha.com',\n 'mail2marshallislands.com',\n 'mail2martha.com',\n 'mail2martin.com',\n 'mail2marty.com',\n 'mail2marvin.com',\n 'mail2mary.com',\n 'mail2maryland.com',\n 'mail2mason.com',\n 'mail2massachusetts.com',\n 'mail2matt.com',\n 'mail2matthew.com',\n 'mail2maurice.com',\n 'mail2mauritania.com',\n 'mail2mauritius.com',\n 'mail2max.com',\n 'mail2maxwell.com',\n 'mail2maybe.com',\n 'mail2mba.com',\n 'mail2me4u.com',\n 'mail2mechanic.com',\n 'mail2medieval.com',\n 'mail2megan.com',\n 'mail2mel.com',\n 'mail2melanie.com',\n 'mail2melissa.com',\n 'mail2melody.com',\n 'mail2member.com',\n 'mail2memphis.com',\n 'mail2methodist.com',\n 'mail2mexican.com',\n 'mail2mexico.com',\n 'mail2mgz.com',\n 'mail2miami.com',\n 'mail2michael.com',\n 'mail2michelle.com',\n 'mail2michigan.com',\n 'mail2mike.com',\n 'mail2milan.com',\n 'mail2milano.com',\n 'mail2mildred.com',\n 'mail2milkyway.com',\n 'mail2millennium.com',\n 'mail2millionaire.com',\n 'mail2milton.com',\n 'mail2mime.com',\n 'mail2mindreader.com',\n 'mail2mini.com',\n 'mail2minister.com',\n 'mail2minneapolis.com',\n 'mail2minnesota.com',\n 'mail2miracle.com',\n 'mail2missionary.com',\n 'mail2mississippi.com',\n 'mail2missouri.com',\n 'mail2mitch.com',\n 'mail2model.com',\n 'mail2moldova.commail2molly.com',\n 'mail2mom.com',\n 'mail2monaco.com',\n 'mail2money.com',\n 'mail2mongolia.com',\n 'mail2monica.com',\n 'mail2montana.com',\n 'mail2monty.com',\n 'mail2moon.com',\n 'mail2morocco.com',\n 'mail2morpheus.com',\n 'mail2mors.com',\n 'mail2moscow.com',\n 'mail2moslem.com',\n 'mail2mouseketeer.com',\n 'mail2movies.com',\n 'mail2mozambique.com',\n 'mail2mp3.com',\n 'mail2mrright.com',\n 'mail2msright.com',\n 'mail2museum.com',\n 'mail2music.com',\n 'mail2musician.com',\n 'mail2muslim.com',\n 'mail2my.com',\n 'mail2myboat.com',\n 'mail2mycar.com',\n 'mail2mycell.com',\n 'mail2mygsm.com',\n 'mail2mylaptop.com',\n 'mail2mymac.com',\n 'mail2mypager.com',\n 'mail2mypalm.com',\n 'mail2mypc.com',\n 'mail2myphone.com',\n 'mail2myplane.com',\n 'mail2namibia.com',\n 'mail2nancy.com',\n 'mail2nasdaq.com',\n 'mail2nathan.com',\n 'mail2nauru.com',\n 'mail2navy.com',\n 'mail2neal.com',\n 'mail2nebraska.com',\n 'mail2ned.com',\n 'mail2neil.com',\n 'mail2nelson.com',\n 'mail2nemesis.com',\n 'mail2nepal.com',\n 'mail2netherlands.com',\n 'mail2network.com',\n 'mail2nevada.com',\n 'mail2newhampshire.com',\n 'mail2newjersey.com',\n 'mail2newmexico.com',\n 'mail2newyork.com',\n 'mail2newzealand.com',\n 'mail2nicaragua.com',\n 'mail2nick.com',\n 'mail2nicole.com',\n 'mail2niger.com',\n 'mail2nigeria.com',\n 'mail2nike.com',\n 'mail2no.com',\n 'mail2noah.com',\n 'mail2noel.com',\n 'mail2noelle.com',\n 'mail2normal.com',\n 'mail2norman.com',\n 'mail2northamerica.com',\n 'mail2northcarolina.com',\n 'mail2northdakota.com',\n 'mail2northpole.com',\n 'mail2norway.com',\n 'mail2notus.com',\n 'mail2noway.com',\n 'mail2nowhere.com',\n 'mail2nuclear.com',\n 'mail2nun.com',\n 'mail2ny.com',\n 'mail2oasis.com',\n 'mail2oceanographer.com',\n 'mail2ohio.com',\n 'mail2ok.com',\n 'mail2oklahoma.com',\n 'mail2oliver.com',\n 'mail2oman.com',\n 'mail2one.com',\n 'mail2onfire.com',\n 'mail2online.com',\n 'mail2oops.com',\n 'mail2open.com',\n 'mail2ophthalmologist.com',\n 'mail2optometrist.com',\n 'mail2oregon.com',\n 'mail2oscars.com',\n 'mail2oslo.com',\n 'mail2painter.com',\n 'mail2pakistan.com',\n 'mail2palau.com',\n 'mail2pan.com',\n 'mail2panama.com',\n 'mail2paraguay.com',\n 'mail2paralegal.com',\n 'mail2paris.com',\n 'mail2park.com',\n 'mail2parker.com',\n 'mail2party.com',\n 'mail2passion.com',\n 'mail2pat.com',\n 'mail2patricia.com',\n 'mail2patrick.com',\n 'mail2patty.com',\n 'mail2paul.com',\n 'mail2paula.com',\n 'mail2pay.com',\n 'mail2peace.com',\n 'mail2pediatrician.com',\n 'mail2peggy.com',\n 'mail2pennsylvania.com',\n 'mail2perry.com',\n 'mail2persephone.com',\n 'mail2persian.com',\n 'mail2peru.com',\n 'mail2pete.com',\n 'mail2peter.com',\n 'mail2pharmacist.com',\n 'mail2phil.com',\n 'mail2philippines.com',\n 'mail2phoenix.com',\n 'mail2phonecall.com',\n 'mail2phyllis.com',\n 'mail2pickup.com',\n 'mail2pilot.com',\n 'mail2pisces.com',\n 'mail2planet.com',\n 'mail2platinum.com',\n 'mail2plato.com',\n 'mail2pluto.com',\n 'mail2pm.com',\n 'mail2podiatrist.com',\n 'mail2poet.com',\n 'mail2poland.com',\n 'mail2policeman.com',\n 'mail2policewoman.com',\n 'mail2politician.com',\n 'mail2pop.com',\n 'mail2pope.com',\n 'mail2popular.com',\n 'mail2portugal.com',\n 'mail2poseidon.com',\n 'mail2potatohead.com',\n 'mail2power.com',\n 'mail2presbyterian.com',\n 'mail2president.com',\n 'mail2priest.com',\n 'mail2prince.com',\n 'mail2princess.com',\n 'mail2producer.com',\n 'mail2professor.com',\n 'mail2protect.com',\n 'mail2psychiatrist.com',\n 'mail2psycho.com',\n 'mail2psychologist.com',\n 'mail2qatar.com',\n 'mail2queen.com',\n 'mail2rabbi.com',\n 'mail2race.com',\n 'mail2racer.com',\n 'mail2rachel.com',\n 'mail2rage.com',\n 'mail2rainmaker.com',\n 'mail2ralph.com',\n 'mail2randy.com',\n 'mail2rap.com',\n 'mail2rare.com',\n 'mail2rave.com',\n 'mail2ray.com',\n 'mail2raymond.com',\n 'mail2realtor.com',\n 'mail2rebecca.com',\n 'mail2recruiter.com',\n 'mail2recycle.com',\n 'mail2redhead.com',\n 'mail2reed.com',\n 'mail2reggie.com',\n 'mail2register.com',\n 'mail2rent.com',\n 'mail2republican.com',\n 'mail2resort.com',\n 'mail2rex.com',\n 'mail2rhodeisland.com',\n 'mail2rich.com',\n 'mail2richard.com',\n 'mail2ricky.com',\n 'mail2ride.com',\n 'mail2riley.com',\n 'mail2rita.com',\n 'mail2rob.com',\n 'mail2robert.com',\n 'mail2roberta.com',\n 'mail2robin.com',\n 'mail2rock.com',\n 'mail2rocker.com',\n 'mail2rod.com',\n 'mail2rodney.com',\n 'mail2romania.com',\n 'mail2rome.com',\n 'mail2ron.com',\n 'mail2ronald.com',\n 'mail2ronnie.com',\n 'mail2rose.com',\n 'mail2rosie.com',\n 'mail2roy.com',\n 'mail2rudy.com',\n 'mail2rugby.com',\n 'mail2runner.com',\n 'mail2russell.com',\n 'mail2russia.com',\n 'mail2russian.com',\n 'mail2rusty.com',\n 'mail2ruth.com',\n 'mail2rwanda.com',\n 'mail2ryan.com',\n 'mail2sa.com',\n 'mail2sabrina.com',\n 'mail2safe.com',\n 'mail2sagittarius.com',\n 'mail2sail.com',\n 'mail2sailor.com',\n 'mail2sal.com',\n 'mail2salaam.com',\n 'mail2sam.com',\n 'mail2samantha.com',\n 'mail2samoa.com',\n 'mail2samurai.com',\n 'mail2sandra.com',\n 'mail2sandy.com',\n 'mail2sanfrancisco.com',\n 'mail2sanmarino.com',\n 'mail2santa.com',\n 'mail2sara.com',\n 'mail2sarah.com',\n 'mail2sat.com',\n 'mail2saturn.com',\n 'mail2saudi.com',\n 'mail2saudiarabia.com',\n 'mail2save.com',\n 'mail2savings.com',\n 'mail2school.com',\n 'mail2scientist.com',\n 'mail2scorpio.com',\n 'mail2scott.com',\n 'mail2sean.com',\n 'mail2search.com',\n 'mail2seattle.com',\n 'mail2secretagent.com',\n 'mail2senate.com',\n 'mail2senegal.com',\n 'mail2sensual.com',\n 'mail2seth.com',\n 'mail2sevenseas.com',\n 'mail2sexy.com',\n 'mail2seychelles.com',\n 'mail2shane.com',\n 'mail2sharon.com',\n 'mail2shawn.com',\n 'mail2ship.com',\n 'mail2shirley.com',\n 'mail2shoot.com',\n 'mail2shuttle.com',\n 'mail2sierraleone.com',\n 'mail2simon.com',\n 'mail2singapore.com',\n 'mail2single.com',\n 'mail2site.com',\n 'mail2skater.com',\n 'mail2skier.com',\n 'mail2sky.com',\n 'mail2sleek.com',\n 'mail2slim.com',\n 'mail2slovakia.com',\n 'mail2slovenia.com',\n 'mail2smile.com',\n 'mail2smith.com',\n 'mail2smooth.com',\n 'mail2soccer.com',\n 'mail2soccerfan.com',\n 'mail2socialist.com',\n 'mail2soldier.com',\n 'mail2somalia.com',\n 'mail2son.com',\n 'mail2song.com',\n 'mail2sos.com',\n 'mail2sound.com',\n 'mail2southafrica.com',\n 'mail2southamerica.com',\n 'mail2southcarolina.com',\n 'mail2southdakota.com',\n 'mail2southkorea.com',\n 'mail2southpole.com',\n 'mail2spain.com',\n 'mail2spanish.com',\n 'mail2spare.com',\n 'mail2spectrum.com',\n 'mail2splash.com',\n 'mail2sponsor.com',\n 'mail2sports.com',\n 'mail2srilanka.com',\n 'mail2stacy.com',\n 'mail2stan.com',\n 'mail2stanley.com',\n 'mail2star.com',\n 'mail2state.com',\n 'mail2stephanie.com',\n 'mail2steve.com',\n 'mail2steven.com',\n 'mail2stewart.com',\n 'mail2stlouis.com',\n 'mail2stock.com',\n 'mail2stockholm.com',\n 'mail2stockmarket.com',\n 'mail2storage.com',\n 'mail2store.com',\n 'mail2strong.com',\n 'mail2student.com',\n 'mail2studio.com',\n 'mail2studio54.com',\n 'mail2stuntman.com',\n 'mail2subscribe.com',\n 'mail2sudan.com',\n 'mail2superstar.com',\n 'mail2surfer.com',\n 'mail2suriname.com',\n 'mail2susan.com',\n 'mail2suzie.com',\n 'mail2swaziland.com',\n 'mail2sweden.com',\n 'mail2sweetheart.com',\n 'mail2swim.com',\n 'mail2swimmer.com',\n 'mail2swiss.com',\n 'mail2switzerland.com',\n 'mail2sydney.com',\n 'mail2sylvia.com',\n 'mail2syria.com',\n 'mail2taboo.com',\n 'mail2taiwan.com',\n 'mail2tajikistan.com',\n 'mail2tammy.com',\n 'mail2tango.com',\n 'mail2tanya.com',\n 'mail2tanzania.com',\n 'mail2tara.com',\n 'mail2taurus.com',\n 'mail2taxi.com',\n 'mail2taxidermist.com',\n 'mail2taylor.com',\n 'mail2taz.com',\n 'mail2teacher.com',\n 'mail2technician.com',\n 'mail2ted.com',\n 'mail2telephone.com',\n 'mail2teletubbie.com',\n 'mail2tenderness.com',\n 'mail2tennessee.com',\n 'mail2tennis.com',\n 'mail2tennisfan.com',\n 'mail2terri.com',\n 'mail2terry.com',\n 'mail2test.com',\n 'mail2texas.com',\n 'mail2thailand.com',\n 'mail2therapy.com',\n 'mail2think.com',\n 'mail2tickets.com',\n 'mail2tiffany.com',\n 'mail2tim.com',\n 'mail2time.com',\n 'mail2timothy.com',\n 'mail2tina.com',\n 'mail2titanic.com',\n 'mail2toby.com',\n 'mail2todd.com',\n 'mail2togo.com',\n 'mail2tom.com',\n 'mail2tommy.com',\n 'mail2tonga.com',\n 'mail2tony.com',\n 'mail2touch.com',\n 'mail2tourist.com',\n 'mail2tracey.com',\n 'mail2tracy.com',\n 'mail2tramp.com',\n 'mail2travel.com',\n 'mail2traveler.com',\n 'mail2travis.com',\n 'mail2trekkie.com',\n 'mail2trex.com',\n 'mail2triallawyer.com',\n 'mail2trick.com',\n 'mail2trillionaire.com',\n 'mail2troy.com',\n 'mail2truck.com',\n 'mail2trump.com',\n 'mail2try.com',\n 'mail2tunisia.com',\n 'mail2turbo.com',\n 'mail2turkey.com',\n 'mail2turkmenistan.com',\n 'mail2tv.com',\n 'mail2tycoon.com',\n 'mail2tyler.com',\n 'mail2u4me.com',\n 'mail2uae.com',\n 'mail2uganda.com',\n 'mail2uk.com',\n 'mail2ukraine.com',\n 'mail2uncle.com',\n 'mail2unsubscribe.com',\n 'mail2uptown.com',\n 'mail2uruguay.com',\n 'mail2usa.com',\n 'mail2utah.com',\n 'mail2uzbekistan.com',\n 'mail2v.com',\n 'mail2vacation.com',\n 'mail2valentines.com',\n 'mail2valerie.com',\n 'mail2valley.com',\n 'mail2vamoose.com',\n 'mail2vanessa.com',\n 'mail2vanuatu.com',\n 'mail2venezuela.com',\n 'mail2venous.com',\n 'mail2venus.com',\n 'mail2vermont.com',\n 'mail2vickie.com',\n 'mail2victor.com',\n 'mail2victoria.com',\n 'mail2vienna.com',\n 'mail2vietnam.com',\n 'mail2vince.com',\n 'mail2virginia.com',\n 'mail2virgo.com',\n 'mail2visionary.com',\n 'mail2vodka.com',\n 'mail2volleyball.com',\n 'mail2waiter.com',\n 'mail2wallstreet.com',\n 'mail2wally.com',\n 'mail2walter.com',\n 'mail2warren.com',\n 'mail2washington.com',\n 'mail2wave.com',\n 'mail2way.com',\n 'mail2waycool.com',\n 'mail2wayne.com',\n 'mail2webmaster.com',\n 'mail2webtop.com',\n 'mail2webtv.com',\n 'mail2weird.com',\n 'mail2wendell.com',\n 'mail2wendy.com',\n 'mail2westend.com',\n 'mail2westvirginia.com',\n 'mail2whether.com',\n 'mail2whip.com',\n 'mail2white.com',\n 'mail2whitehouse.com',\n 'mail2whitney.com',\n 'mail2why.com',\n 'mail2wilbur.com',\n 'mail2wild.com',\n 'mail2willard.com',\n 'mail2willie.com',\n 'mail2wine.com',\n 'mail2winner.com',\n 'mail2wired.com',\n 'mail2wisconsin.com',\n 'mail2woman.com',\n 'mail2wonder.com',\n 'mail2world.com',\n 'mail2worship.com',\n 'mail2wow.com',\n 'mail2www.com',\n 'mail2wyoming.com',\n 'mail2xfiles.com',\n 'mail2xox.com',\n 'mail2yachtclub.com',\n 'mail2yahalla.com',\n 'mail2yemen.com',\n 'mail2yes.com',\n 'mail2yugoslavia.com',\n 'mail2zack.com',\n 'mail2zambia.com',\n 'mail2zenith.com',\n 'mail2zephir.com',\n 'mail2zeus.com',\n 'mail2zipper.com',\n 'mail2zoo.com',\n 'mail2zoologist.com',\n 'mail2zurich.com',\n 'mail3000.com',\n 'mail333.com',\n 'mailandftp.com',\n 'mailandnews.com',\n 'mailas.com',\n 'mailasia.com',\n 'mailbolt.com',\n 'mailbomb.net',\n 'mailboom.com',\n 'mailbox.as',\n 'mailbox.co.za',\n 'mailbox.gr',\n 'mailbox.hu',\n 'mailbr.com.br',\n 'mailc.net',\n 'mailcan.com',\n 'mailcc.com',\n 'mailchoose.co',\n 'mailcity.com',\n 'mailclub.fr',\n 'mailclub.net',\n 'mailexcite.com',\n 'mailforce.net',\n 'mailftp.com',\n 'mailgate.gr',\n 'mailgenie.net',\n 'mailhaven.com',\n 'mailhood.com',\n 'mailingweb.com',\n 'mailisent.com',\n 'mailite.com',\n 'mailme.dk',\n 'mailmight.com',\n 'mailmij.nl',\n 'mailnew.com',\n 'mailops.com',\n 'mailoye.com',\n 'mailpanda.com',\n 'mailpost.zzn.com',\n 'mailpride.com',\n 'mailpuppy.com',\n 'mailroom.com',\n 'mailru.com',\n 'mailsent.net',\n 'mailshuttle.com',\n 'mailstart.com',\n 'mailstartplus.com',\n 'mailsurf.com',\n 'mailtag.com',\n 'mailto.de',\n 'mailup.net',\n 'mailwire.com',\n 'maktoob.com',\n 'malayalamtelevision.net',\n 'manager.de',\n 'mantrafreenet.com',\n 'mantramail.com',\n 'mantraonline.com',\n 'marchmail.com',\n 'mariah-carey.ml.org',\n 'mariahc.com',\n 'marijuana.nl',\n 'marketing.lu',\n 'married-not.com',\n 'marsattack.com',\n 'martindalemail.com',\n 'masrawy.com',\n 'matmail.com',\n 'mauimail.com',\n 'mauritius.com',\n 'maxleft.com',\n 'maxmail.co.uk',\n 'mbox.com.au',\n 'mchsi.com',\n 'mciworldcom.net',\n 'me-mail.hu',\n 'me.com',\n 'medical.net.au',\n 'medione.net',\n 'medmail.com',\n 'medscape.com',\n 'meetingmall.com',\n 'megago.com',\n 'megamail.pt',\n 'megapathdsl.net',\n 'megapoint.com',\n 'mehrani.com',\n 'mehtaweb.com',\n 'mekhong.com',\n 'melodymail.com',\n 'meloo.com',\n 'members.student.com',\n 'message.hu',\n 'messages.to',\n 'metacrawler.com',\n 'metalfan.com',\n 'metta.lk',\n 'miatadriver.com',\n 'miesto.sk',\n 'mighty.co.za',\n 'miho-nakayama.com',\n 'mikrotamanet.com',\n 'millionaireintraining.com',\n 'milmail.com',\n 'mindless.com',\n 'mindspring.com',\n 'mini-mail.com',\n 'misery.net',\n 'mittalweb.com',\n 'mixmail.com',\n 'mjfrogmail.com',\n 'ml1.net',\n 'mobilbatam.com',\n 'mochamail.com',\n 'mohammed.com',\n 'moldova.cc',\n 'moldova.com',\n 'moldovacc.com',\n 'money.net',\n 'montevideo.com.uy',\n 'moonman.com',\n 'moose-mail.com',\n 'mortaza.com',\n 'mosaicfx.com',\n 'most-wanted.com',\n 'mostlysunny.com',\n 'motormania.com',\n 'movemail.com',\n 'movieluver.com',\n 'mp4.it',\n 'mr-potatohead.com',\n 'mrpost.com',\n 'mscold.com',\n 'msgbox.com',\n 'msn.com',\n 'mttestdriver.com',\n 'mundomail.net',\n 'munich.com',\n 'music.com',\n 'musician.org',\n 'musicscene.org',\n 'mybox.it',\n 'mycabin.com',\n 'mycampus.com',\n 'mycity.com',\n 'mycool.com',\n 'mydomain.com',\n 'mydotcomaddress.com',\n 'myfamily.com',\n 'mygo.com',\n 'myiris.com',\n 'mynamedot.com',\n 'mynetaddress.com',\n 'myownemail.com',\n 'myownfriends.com',\n 'mypad.com',\n 'mypersonalemail.com',\n 'myplace.com',\n 'myrealbox.com',\n 'myremarq.com',\n 'myself.com',\n 'mystupidjob.com',\n 'mythirdage.com',\n 'myway.com',\n 'myworldmail.com',\n 'n2.com',\n 'n2business.com',\n 'n2mail.com',\n 'n2software.com',\n 'nabc.biz',\n 'nafe.com',\n 'nagpal.net',\n 'nakedgreens.com',\n 'name.com',\n 'nameplanet.com',\n 'nandomail.com',\n 'naplesnews.net',\n 'naseej.com',\n 'nate.com',\n 'nativestar.net',\n 'nativeweb.net',\n 'naui.net',\n 'nauticom.net',\n 'naver.com',\n 'navigator.lv',\n 'navy.org',\n 'naz.com',\n 'nchoicemail.com',\n 'neeva.net',\n 'nemra1.com',\n 'nenter.com',\n 'neo.rr.com',\n 'nervhq.org',\n 'net-pager.net',\n 'net4b.pt',\n 'net4you.at',\n 'netbounce.com',\n 'netbroadcaster.com',\n 'netby.dk',\n 'netcenter-vn.net',\n 'netcom.ca',\n 'netcom.com',\n 'netcourrier.com',\n 'netexecutive.com',\n 'netexpressway.com',\n 'netgenie.com',\n 'netian.com',\n 'netizen.com.ar',\n 'netlane.com',\n 'netlimit.com',\n 'netmanor.com',\n 'netmongol.com',\n 'netnet.com.sg',\n 'netpiper.com',\n 'netposta.net',\n 'netradiomail.com',\n 'netralink.com',\n 'netscape.com',\n 'netscape.net',\n 'netscapeonline.co.uk',\n 'netsero.net',\n 'netspeedway.com',\n 'netsquare.com',\n 'netster.com',\n 'nettaxi.com',\n 'netzero.com',\n 'netzero.net',\n 'neuf.fr',\n 'newmail.com',\n 'newmail.net',\n 'newmail.ru',\n 'newyork.com',\n 'nexxmail.com',\n 'nfmail.com',\n 'nhmail.com',\n 'nicebush.com',\n 'nicegal.com',\n 'nicholastse.net',\n 'nicolastse.com',\n 'nightmail.com',\n 'nikopage.com',\n 'nimail.com',\n 'nirvanafan.com',\n 'noavar.com',\n 'norika-fujiwara.com',\n 'norikomail.com',\n 'northgates.net',\n 'nospammail.net',\n 'ntlworld.com',\n 'ntscan.com',\n 'ny.com',\n 'nyc.com',\n 'nycmail.com',\n 'nzoomail.com',\n 'o-tay.com',\n 'o2.co.uk',\n 'oaklandas-fan.com',\n 'oceanfree.net',\n 'oddpost.com',\n 'odmail.com',\n 'office-email.com',\n 'officedomain.com',\n 'offroadwarrior.com',\n 'oi.com.br',\n 'oicexchange.com',\n 'okbank.com',\n 'okhuman.com',\n 'okmad.com',\n 'okmagic.com',\n 'okname.net',\n 'okuk.com',\n 'oldies1041.com',\n 'oldies104mail.com',\n 'ole.com',\n 'olemail.com',\n 'olg.com',\n 'olympist.net',\n 'omaninfo.com',\n 'onebox.com',\n 'onenet.com.ar',\n 'onet.pl',\n 'oninet.pt',\n 'online.de',\n 'online.ie',\n 'onlinewiz.com',\n 'onmilwaukee.com',\n 'onobox.com',\n 'onvillage.com',\n 'operafan.com',\n 'operamail.com',\n 'optician.com',\n 'optonline.net',\n 'optusnet.com.au',\n 'orange.fr',\n 'orange.net',\n 'orbitel.bg',\n 'orgmail.net',\n 'osite.com.br',\n 'oso.com',\n 'otakumail.com',\n 'our-computer.com',\n 'our-office.com',\n 'our.st',\n 'ourbrisbane.com',\n 'ournet.md',\n 'outel.com',\n 'outgun.com',\n 'outlook.com',\n 'outlook.com.br',\n 'over-the-rainbow.com',\n 'ownmail.net',\n 'ozbytes.net.au',\n 'ozemail.com.au',\n 'pacbell.net',\n 'pacific-re.com',\n 'packersfan.com',\n 'pagina.de',\n 'pagons.org',\n 'pakistanoye.com',\n 'palestinemail.com',\n 'parkjiyoon.com',\n 'parrot.com',\n 'parsmail.com',\n 'partlycloudy.com',\n 'partynight.at',\n 'parvazi.com',\n 'passwordmail.com',\n 'pathfindermail.com',\n 'patmedia.net',\n 'pconnections.net',\n 'pcpostal.com',\n 'pcsrock.com',\n 'peachworld.com',\n 'pediatrician.com',\n 'pemail.net',\n 'penpen.com',\n 'peoplepc.com',\n 'peopleweb.com',\n 'perfectmail.com',\n 'personal.ro',\n 'personales.com',\n 'petml.com',\n 'pettypool.com',\n 'pezeshkpour.com',\n 'phayze.com',\n 'phreaker.net',\n 'pickupman.com',\n 'picusnet.com',\n 'pigpig.net',\n 'pinoymail.com',\n 'pipeline.com',\n 'piracha.net',\n 'pisem.net',\n 'planet-mail.com',\n 'planet.nl',\n 'planetaccess.com',\n 'planetall.com',\n 'planetarymotion.net',\n 'planetdirect.com',\n 'planetearthinter.net',\n 'planetout.com',\n 'plasa.com',\n 'playersodds.com',\n 'playful.com',\n 'plusmail.com.br',\n 'pmail.net',\n 'pobox.com',\n 'pobox.hu',\n 'pobox.sk',\n 'pochta.ru',\n 'poczta.fm',\n 'poetic.com',\n 'polbox.com',\n 'policeoffice.com',\n 'pool-sharks.com',\n 'poond.com',\n 'popaccount.com',\n 'popmail.com',\n 'popsmail.com',\n 'popstar.com',\n 'populus.net',\n 'portableoffice.com',\n 'portugalmail.com',\n 'portugalmail.pt',\n 'portugalnet.com',\n 'positive-thinking.com',\n 'post.com',\n 'post.cz',\n 'post.sk',\n 'posta.net',\n 'posta.ro',\n 'postaccesslite.com',\n 'postafree.com',\n 'postaweb.com',\n 'poste.it',\n 'postinbox.com',\n 'postino.ch',\n 'postmark.net',\n 'postmaster.co.uk',\n 'postpro.net',\n 'pousa.com',\n 'powerfan.com',\n 'praize.com',\n 'premiumservice.com',\n 'presidency.com',\n 'press.co.jp',\n 'priest.com',\n 'primposta.com',\n 'primposta.hu',\n 'pro.hu',\n 'probemail.com',\n 'prodigy.net',\n 'prodigy.net.mx',\n 'progetplus.it',\n 'programmer.net',\n 'programozo.hu',\n 'proinbox.com',\n 'project2k.com',\n 'prolaunch.com',\n 'promessage.com',\n 'prontomail.com',\n 'protonmail.com',\n 'psi.net',\n 'psv-supporter.com',\n 'ptd.net',\n 'public.usa.com',\n 'publicist.com',\n 'pulp-fiction.com',\n 'punkass.com',\n 'qatarmail.com',\n 'qis.net',\n 'qprfans.com',\n 'qq.com',\n 'qrio.com',\n 'quackquack.com',\n 'quakemail.com',\n 'qudsmail.com',\n 'quepasa.com',\n 'quickwebmail.com',\n 'quiklinks.com',\n 'quikmail.com',\n 'qwest.net',\n 'qwestoffice.net',\n 'r-o-o-t.com',\n 'r7.com',\n 'raakim.com',\n 'racedriver.com',\n 'racefanz.com',\n 'racingfan.com.au',\n 'racingmail.com',\n 'radicalz.com',\n 'ragingbull.com',\n 'rambler.ru',\n 'ranmamail.com',\n 'rastogi.net',\n 'ratt-n-roll.com',\n 'rattle-snake.com',\n 'ravearena.com',\n 'ravemail.com',\n 'razormail.com',\n 'rccgmail.org',\n 'rcn.com',\n 'realemail.net',\n 'reallyfast.biz',\n 'realradiomail.com',\n 'recycler.com',\n 'rediffmail.com',\n 'rediffmailpro.com',\n 'rednecks.com',\n 'redseven.de',\n 'redsfans.com',\n 'reggafan.com',\n 'registerednurses.com',\n 'repairman.com',\n 'reply.hu',\n 'representative.com',\n 'rescueteam.com',\n 'resumemail.com',\n 'rezai.com',\n 'richmondhill.com',\n 'rickymail.com',\n 'rin.ru',\n 'riopreto.com.br',\n 'rn.com',\n 'roadrunner.com',\n 'roanokemail.com',\n 'rock.com',\n 'rocketmail.com',\n 'rockfan.com',\n 'rodrun.com',\n 'rome.com',\n 'roosh.com',\n 'rotfl.com',\n 'roughnet.com',\n 'rr.com',\n 'rrohio.com',\n 'rsub.com',\n 'rubyridge.com',\n 'runbox.com',\n 'rushpost.com',\n 'ruttolibero.com',\n 'rvshop.com',\n 's-mail.com',\n 'sabreshockey.com',\n 'sacbeemail.com',\n 'safarimail.com',\n 'safe-mail.net',\n 'sagra.lu',\n 'sailormoon.com',\n 'saintly.com',\n 'saintmail.net',\n 'sale-sale-sale.com',\n 'salehi.net',\n 'samerica.com',\n 'samilan.net',\n 'sammimail.com',\n 'sanfranmail.com',\n 'sanook.com',\n 'sapo.pt',\n 'sativa.ro.org',\n 'saudia.com',\n 'sayhi.net',\n 'sbcglobal.net',\n 'scandalmail.com',\n 'schizo.com',\n 'schoolemail.com',\n 'schoolmail.com',\n 'schoolsucks.com',\n 'schweiz.org',\n 'sci.fi',\n 'science.com.au',\n 'scientist.com',\n 'scifianime.com',\n 'scottishmail.co.uk',\n 'scubadiving.com',\n 'seanet.com',\n 'searchwales.com',\n 'sebil.com',\n 'secret-police.com',\n 'secretservices.net',\n 'seductive.com',\n 'seekstoyboy.com',\n 'seguros.com.br',\n 'send.hu',\n 'sendme.cz',\n 'sent.com',\n 'sentrismail.com',\n 'serga.com.ar',\n 'servemymail.com',\n 'sesmail.com',\n 'sexmagnet.com',\n 'seznam.cz',\n 'sfr.fr',\n 'shahweb.net',\n 'shaniastuff.com',\n 'sharewaredevelopers.com',\n 'sharmaweb.com',\n 'shaw.ca',\n 'she.com',\n 'shootmail.com',\n 'shotgun.hu',\n 'shuf.com',\n 'sialkotcity.com',\n 'sialkotian.com',\n 'sialkotoye.com',\n 'sify.com',\n 'silkroad.net',\n 'sina.cn',\n 'sina.com',\n 'sinamail.com',\n 'singapore.com',\n 'singmail.com',\n 'singnet.com.sg',\n 'singpost.com',\n 'skafan.com',\n 'skim.com',\n 'skizo.hu',\n 'sky.com',\n 'skynet.be',\n 'slamdunkfan.com',\n 'slingshot.com',\n 'slo.net',\n 'slotter.com',\n 'smapxsmap.net',\n 'smileyface.comsmithemail.net',\n 'smoothmail.com',\n 'snail-mail.net',\n 'snail-mail.ney',\n 'snakemail.com',\n 'sndt.net',\n 'sneakemail.com',\n 'snet.net',\n 'snip.net',\n 'sniper.hu',\n 'snoopymail.com',\n 'snowboarding.com',\n 'snowdonia.net',\n 'socamail.com',\n 'socceramerica.net',\n 'soccermail.com',\n 'soccermomz.com',\n 'sociologist.com',\n 'softhome.net',\n 'sol.dk',\n 'soldier.hu',\n 'soon.com',\n 'soulfoodcookbook.com',\n 'sp.nl',\n 'space-bank.com',\n 'space-man.com',\n 'space-ship.com',\n 'space-travel.com',\n 'space.com',\n 'spaceart.com',\n 'spacebank.com',\n 'spacemart.com',\n 'spacetowns.com',\n 'spacewar.com',\n 'spamex.com',\n 'spartapiet.com',\n 'spazmail.com',\n 'speedemail.net',\n 'speedpost.net',\n 'speedrules.com',\n 'speedrulz.com',\n 'speedy.com.ar',\n 'spils.com',\n 'spinfinder.com',\n 'sportemail.com',\n 'sportsmail.com',\n 'sporttruckdriver.com',\n 'spray.no',\n 'spray.se',\n 'sprintmail.com',\n 'sprynet.com',\n 'spymac.com',\n 'srilankan.net',\n 'st-davids.net',\n 'stade.fr',\n 'stalag13.com',\n 'stargateradio.com',\n 'starmail.com',\n 'starmail.org',\n 'starmedia.com',\n 'starplace.com',\n 'starpower.net',\n 'starspath.com',\n 'start.com.au',\n 'starting-point.com',\n 'startrekmail.com',\n 'stealthmail.com',\n 'stockracer.com',\n 'stones.com',\n 'stopdropandroll.com',\n 'storksite.com',\n 'stribmail.com',\n 'strompost.com',\n 'strongguy.com',\n 'studentcenter.org',\n 'subnetwork.com',\n 'subram.com',\n 'sudanmail.net',\n 'suhabi.com',\n 'suisse.org',\n 'sukhumvit.net',\n 'sunpoint.net',\n 'sunrise-sunset.com',\n 'sunsgame.com',\n 'sunumail.sn',\n 'superdada.com',\n 'supereva.it',\n 'supermail.ru',\n 'surat.com',\n 'surf3.net',\n 'surfree.com',\n 'surfy.net',\n 'surimail.com',\n 'survivormail.com',\n 'swbell.net',\n 'sweb.cz',\n 'swiftdesk.com',\n 'swingeasyhithard.com',\n 'swingfan.com',\n 'swipermail.zzn.com',\n 'swirve.com',\n 'swissinfo.org',\n 'swissmail.net',\n 'switchboardmail.com',\n 'switzerland.org',\n 'swva.net',\n 'sx172.com',\n 'sympatico.ca',\n 'syom.com',\n 'syriamail.com',\n 't-online.de',\n 't2mail.com',\n 'takuyakimura.com',\n 'talk21.com',\n 'talkcity.com',\n 'talktalk.co.uk',\n 'tamil.com',\n 'tampabay.rr.com',\n 'tatanova.com',\n 'tbwt.com',\n 'tds.net',\n 'teamdiscovery.com',\n 'teamtulsa.net',\n 'tech4peace.org',\n 'techemail.com',\n 'techie.com',\n 'technisamail.co.za',\n 'technologist.com',\n 'techpointer.com',\n 'techscout.com',\n 'techseek.com',\n 'techspot.com',\n 'teenagedirtbag.com',\n 'telebot.com',\n 'telebot.net',\n 'teleline.es',\n 'telenet.be',\n 'telerymd.com',\n 'teleserve.dynip.com',\n 'teletu.it',\n 'telinco.net',\n 'telkom.net',\n 'telpage.net',\n 'telus.net',\n 'temtulsa.net',\n 'tenchiclub.com',\n 'tenderkiss.com',\n 'tennismail.com',\n 'terra.cl',\n 'terra.com',\n 'terra.com.ar',\n 'terra.com.br',\n 'terra.es',\n 'tfanus.com.er',\n 'tfz.net',\n 'thai.com',\n 'thaimail.com',\n 'thaimail.net',\n 'the-african.com',\n 'the-airforce.com',\n 'the-aliens.com',\n 'the-american.com',\n 'the-animal.com',\n 'the-army.com',\n 'the-astronaut.com',\n 'the-beauty.com',\n 'the-big-apple.com',\n 'the-biker.com',\n 'the-boss.com',\n 'the-brazilian.com',\n 'the-canadian.com',\n 'the-canuck.com',\n 'the-captain.com',\n 'the-chinese.com',\n 'the-country.com',\n 'the-cowboy.com',\n 'the-davis-home.com',\n 'the-dutchman.com',\n 'the-eagles.com',\n 'the-englishman.com',\n 'the-fastest.net',\n 'the-fool.com',\n 'the-frenchman.com',\n 'the-galaxy.net',\n 'the-genius.com',\n 'the-gentleman.com',\n 'the-german.com',\n 'the-gremlin.com',\n 'the-hooligan.com',\n 'the-italian.com',\n 'the-japanese.com',\n 'the-lair.com',\n 'the-madman.com',\n 'the-mailinglist.com',\n 'the-marine.com',\n 'the-master.com',\n 'the-mexican.com',\n 'the-ministry.com',\n 'the-monkey.com',\n 'the-newsletter.net',\n 'the-pentagon.com',\n 'the-police.com',\n 'the-prayer.com',\n 'the-professional.com',\n 'the-quickest.com',\n 'the-russian.com',\n 'the-snake.com',\n 'the-spaceman.com',\n 'the-stock-market.com',\n 'the-student.net',\n 'the-whitehouse.net',\n 'the-wild-west.com',\n 'the18th.com',\n 'thecoolguy.com',\n 'thecriminals.com',\n 'thedoghousemail.com',\n 'thedorm.com',\n 'theend.hu',\n 'theglobe.com',\n 'thegolfcourse.com',\n 'thegooner.com',\n 'theheadoffice.com',\n 'thelanddownunder.com',\n 'themillionare.net',\n 'theoffice.net',\n 'thepokerface.com',\n 'thepostmaster.net',\n 'theraces.com',\n 'theracetrack.com',\n 'thestreetfighter.com',\n 'theteebox.com',\n 'thewatercooler.com',\n 'thewebpros.co.uk',\n 'thewizzard.com',\n 'thewizzkid.com',\n 'thezhangs.net',\n 'thirdage.com',\n 'thisgirl.com',\n 'thoic.com',\n 'thundermail.com',\n 'tidni.com',\n 'timein.net',\n 'tin.it',\n 'tiscali.at',\n 'tiscali.be',\n 'tiscali.co.uk',\n 'tiscali.it',\n 'tiscali.lu',\n 'tiscali.se',\n 'tkcity.com',\n 'toolsource.com',\n 'topchat.com',\n 'topgamers.co.uk',\n 'topletter.com',\n 'topmail.com.ar',\n 'topsurf.com',\n 'topteam.bg',\n 'torchmail.com',\n 'tot.net',\n 'totalmusic.net',\n 'toughguy.net',\n 'tpg.com.au',\n 'travel.li',\n 'trialbytrivia.com',\n 'tritium.net',\n 'trmailbox.com',\n 'tropicalstorm.com',\n 'truckers.com',\n 'truckerz.com',\n 'truckracer.com',\n 'trust-me.com',\n 'tsamail.co.za',\n 'ttml.co.in',\n 'tunisiamail.com',\n 'turkey.com',\n 'tvcablenet.be',\n 'twinstarsmail.com',\n 'tycoonmail.com',\n 'typemail.com',\n 'u2club.com',\n 'uae.ac',\n 'uaemail.com',\n 'ubbi.com',\n 'ubbi.com.br',\n 'uboot.com',\n 'uk2k.com',\n 'uk2net.com',\n 'uk7.net',\n 'uk8.net',\n 'ukbuilder.com',\n 'ukcool.com',\n 'ukdreamcast.com',\n 'ukmail.org',\n 'ukmax.com',\n 'ukr.net',\n 'uku.co.uk',\n 'ultapulta.com',\n 'ultrapostman.com',\n 'ummah.org',\n 'umpire.com',\n 'unbounded.com',\n 'unforgettable.com',\n 'uni.de',\n 'unican.es',\n 'unihome.com',\n 'universal.pt',\n 'uno.ee',\n 'uno.it',\n 'unofree.it',\n 'unomail.com',\n 'uol.com.ar',\n 'uol.com.br',\n 'uol.com.co',\n 'uol.com.mx',\n 'uol.com.ve',\n 'uole.com',\n 'uole.com.ve',\n 'uolmail.com',\n 'uomail.com',\n 'upf.org',\n 'ureach.com',\n 'urgentmail.biz',\n 'usa.com',\n 'usa.net',\n 'usaaccess.net',\n 'usanetmail.com',\n 'usermail.com',\n 'usit.net',\n 'usma.net',\n 'usmc.net',\n 'uswestmail.net',\n 'uu.net',\n 'uymail.com',\n 'uyuyuy.com',\n 'v-sexi.com',\n 'vahoo.com',\n 'varbizmail.com',\n 'vcmail.com',\n 'velnet.co.uk',\n 'velocall.com',\n 'verizon.net',\n 'verizonmail.com',\n 'veryfast.biz',\n 'veryspeedy.net',\n 'videotron.ca',\n 'violinmakers.co.uk',\n 'vip.gr',\n 'vipmail.ru',\n 'virgilio.it',\n 'virgin.net',\n 'virginmedia.com',\n 'virtualactive.com',\n 'virtualmail.com',\n 'visitmail.com',\n 'visitweb.com',\n 'visto.com',\n 'visualcities.com',\n 'vivavelocity.com',\n 'vivianhsu.net',\n 'vjmail.com',\n 'vjtimail.com',\n 'vlmail.com',\n 'vnn.vn',\n 'voila.fr',\n 'volcanomail.com',\n 'voo.be',\n 'vote-democrats.com',\n 'vote-hillary.com',\n 'vote-republicans.com',\n 'vote4gop.org',\n 'votenet.com',\n 'vr9.com',\n 'w3.to',\n 'wahoye.com',\n 'wales2000.net',\n 'wam.co.za',\n 'wanadoo.co.uk',\n 'wanadoo.es',\n 'wanadoo.fr',\n 'warmmail.com',\n 'warpmail.net',\n 'warrior.hu',\n 'waumail.com',\n 'wbdet.com',\n 'wearab.net',\n 'web-mail.com.ar',\n 'web-police.com',\n 'web.de',\n 'webave.com',\n 'webcammail.com',\n 'webcity.ca',\n 'webdream.com',\n 'webinbox.com',\n 'webindia123.com',\n 'webjump.com',\n 'webmail.bellsouth.net',\n 'webmail.co.yu',\n 'webmail.co.za',\n 'webmail.hu',\n 'webmails.com',\n 'webprogramming.com',\n 'webstable.net',\n 'webstation.com',\n 'websurfer.co.za',\n 'webtopmail.com',\n 'weedmail.com',\n 'weekmail.com',\n 'weekonline.com',\n 'wehshee.com',\n 'welsh-lady.com',\n 'whale-mail.com',\n 'whartontx.com',\n 'wheelweb.com',\n 'whipmail.com',\n 'whoever.com',\n 'whoopymail.com',\n 'wickedmail.com',\n 'wideopenwest.com',\n 'wildmail.com',\n 'windrivers.net',\n 'windstream.net',\n 'wingnutz.com',\n 'winmail.com.au',\n 'winning.com',\n 'witty.com',\n 'wiz.cc',\n 'wkbwmail.com',\n 'woh.rr.com',\n 'wolf-web.com',\n 'wombles.com',\n 'wonder-net.com',\n 'wongfaye.com',\n 'wooow.it',\n 'workmail.com',\n 'worldemail.com',\n 'worldmailer.com',\n 'worldnet.att.net',\n 'wosaddict.com',\n 'wouldilie.com',\n 'wow.com',\n 'wowgirl.com',\n 'wowmail.com',\n 'wowway.com',\n 'wp.pl',\n 'wptamail.com',\n 'wrestlingpages.com',\n 'wrexham.net',\n 'writeme.com',\n 'writemeback.com',\n 'wrongmail.com',\n 'wtvhmail.com',\n 'wwdg.com',\n 'www.com',\n 'www2000.net',\n 'wx88.net',\n 'wxs.net',\n 'wyrm.supernews.com',\n 'x-mail.net',\n 'x-networks.net',\n 'x5g.com',\n 'xmastime.com',\n 'xmsg.com',\n 'xoom.com',\n 'xoommail.com',\n 'xpressmail.zzn.com',\n 'xsmail.com',\n 'xuno.com',\n 'xzapmail.com',\n 'ya.ru',\n 'yada-yada.com',\n 'yaho.com',\n 'yahoo.ca',\n 'yahoo.co.id',\n 'yahoo.co.in',\n 'yahoo.co.jp',\n 'yahoo.co.kr',\n 'yahoo.co.nz',\n 'yahoo.co.uk',\n 'yahoo.com',\n 'yahoo.com.ar',\n 'yahoo.com.au',\n 'yahoo.com.br',\n 'yahoo.com.cn',\n 'yahoo.com.hk',\n 'yahoo.com.is',\n 'yahoo.com.mx',\n 'yahoo.com.ph',\n 'yahoo.com.ru',\n 'yahoo.com.sg',\n 'yahoo.de',\n 'yahoo.dk',\n 'yahoo.es',\n 'yahoo.fr',\n 'yahoo.ie',\n 'yahoo.in',\n 'yahoo.it',\n 'yahoo.jp',\n 'yahoo.ru',\n 'yahoo.se',\n 'yahoofs.com',\n 'yalla.com',\n 'yalla.com.lb',\n 'yalook.com',\n 'yam.com',\n 'yandex.com',\n 'yandex.ru',\n 'yapost.com',\n 'yawmail.com',\n 'yclub.com',\n 'yebox.com',\n 'yehaa.com',\n 'yehey.com',\n 'yemenmail.com',\n 'yepmail.net',\n 'yesbox.net',\n 'ygm.com',\n 'yifan.net',\n 'ymail.com',\n 'ynnmail.com',\n 'yogotemail.com',\n 'yopolis.com',\n 'youareadork.com',\n 'youpy.com',\n 'your-house.com',\n 'yourinbox.com',\n 'yourlover.net',\n 'yourname.ddns.org',\n 'yourname.freeservers.com',\n 'yournightmare.com',\n 'yours.com',\n 'yourssincerely.com',\n 'yoursubdomain.findhere.com',\n 'yoursubdomain.zzn.com',\n 'yourteacher.net',\n 'yourwap.com',\n 'youvegotmail.net',\n 'yuuhuu.net',\n 'yyhmail.com',\n 'zahadum.com',\n 'zcities.com',\n 'zdnetmail.com',\n 'zeeks.com',\n 'zeepost.nl',\n 'zensearch.net',\n 'zhaowei.net',\n 'zionweb.org',\n 'zip.net',\n 'zipido.com',\n 'ziplink.net',\n 'ziplip.com',\n 'zipmail.com',\n 'zipmail.com.br',\n 'zipmax.com',\n 'zmail.ru',\n 'zoho.com',\n 'zonnet.nl',\n 'zoominternet.net',\n 'zubee.com',\n 'zuvio.com',\n 'zuzzurello.com',\n 'zwallet.com',\n 'zybermail.com',\n 'zydecofan.com',\n 'zzn.com',\n 'zzom.co.uk',\n];\n","import { domains } from './domains';\n\nexport const doA11yValidation = (v, field, formValidationSent) => {\n const error = doValidateField(field, v);\n if (JSON.stringify(field.validations) !== '{}') {\n if ((v?.length >= 1 || formValidationSent) && error?.fieldId === field.id) return 'true'\n else if (v?.length >= 1) return 'false'\n else return ''\n }\n}\n\nexport const doValidateField = (field, value) => {\n const isRequired = field.validations && field.validations.required;\n const minLength = field.validations && field.validations.minLength;\n const maxLength = field.validations && field.validations.maxLength;\n const hasRegex = field?.validations?.regex?.pattern ? true : false;\n const integer = field.dataType === 'integer';\n const decimal = field.dataType === 'decimal';\n const isBusinessEmail = field.id === 'businessEmail';\n\n if (isRequired && value?.length <= 0) {\n const errorMessage = isRequired?.message?.['en-GB'] || `${field.name?.['en-GB']} is required`;\n return { fieldId: field.id, groupId: field.groupId, message: errorMessage };\n }\n if (minLength && minLength.value > value.length) {\n const errorMessage = minLength.message\n ? minLength.message['en-GB']\n : `Minimum characters ${minLength.value}`;\n return { fieldId: field.id, groupId: field.groupId, message: errorMessage };\n }\n if (maxLength && maxLength.value < value.length) {\n const errorMessage =\n maxLength.message && maxLength.message['en-GB']\n ? maxLength.message['en-GB']\n : `Maximum characters ${maxLength.value}`;\n return { fieldId: field.id, groupId: field.groupId, message: errorMessage };\n }\n /** Check Regex and Business Emails */\n if (hasRegex && value.length >= 1) {\n const r = field.validations.regex;\n const msg = r?.message?.['en-GB'] || `${field.name['en-GB']} is invalid`;\n if (isValidRegex(field, value) && isBusinessEmail) {\n if (!isBusinessEmailValid(field, value)) {\n return {\n fieldId: field.id,\n groupId: field.groupId,\n message: 'You must enter a business email address.',\n };\n }\n } else if (!isValidRegex(field, value)) {\n return {\n fieldId: field.id,\n groupId: field.groupId,\n message: msg,\n };\n }\n }\n if (integer) {\n const isInteger = value % 1 === 0;\n if (!isInteger) {\n const errorMessage = `${value} is not an ${field.dataType}`;\n return {\n fieldId: field.id,\n groupId: field.groupId,\n message: errorMessage,\n };\n }\n }\n if (decimal) {\n const isDecimal = value % 1 !== 0;\n if (!isDecimal) {\n const errorMessage = `${value} is not an ${field.dataType}`;\n return {\n fieldId: field.id,\n groupId: field.groupId,\n message: errorMessage,\n };\n }\n }\n};\n\nconst isValidRegex = (field, value) => {\n const regex = field.validations.regex.pattern;\n const regexPattern = RegExp(regex);\n if (!regexPattern.test(value)) return false;\n else return true;\n};\n\nconst isBusinessEmailValid = (field, value) => {\n const domain = value.split('@').pop();\n if (!domains.includes(domain)) return true;\n else return false;\n};\n","export const doCreateMessage = (\n type,\n minLength,\n maxLength,\n currentLength,\n defaultLanguage\n) => {\n if (!type) return null;\n switch (type) {\n case 'min': {\n if (!minLength) return;\n const minLengthVal = minLength && minLength.value;\n const errorMessage =\n minLength && minLength.message && minLength.message[defaultLanguage];\n const minText = `Minimum of ${minLengthVal.toString()} characters`;\n if (errorMessage) {\n return errorMessage;\n } else {\n return minText;\n }\n }\n case 'max': {\n if (!maxLength) return;\n const maxLengthVal = maxLength && maxLength.value;\n const errorMessage =\n maxLength && maxLength.message && maxLength.message[defaultLanguage];\n const maxText = `Maximum of ${maxLengthVal.toString()} characters`;\n if (errorMessage) {\n return errorMessage;\n } else {\n return maxText;\n }\n }\n case 'between': {\n if (!maxLength || !minLength) return;\n const minLengthVal = minLength && minLength.value;\n const maxLengthVal = maxLength && maxLength.value;\n const errorMessage =\n minLength && minLength.message && minLength.message[defaultLanguage];\n const rangeText = `Between ${minLengthVal.toString()}-${maxLengthVal.toString()} characters)`;\n if (errorMessage) {\n return errorMessage;\n } else if (currentLength < minLengthVal) {\n return `${(minLengthVal - currentLength).toString()} character${\n minLengthVal > 1 ? 's' : ''\n } required ${rangeText}`;\n } else if (currentLength > maxLengthVal) {\n return `${(currentLength - maxLengthVal).toString()} character${\n currentLength - maxLengthVal > 1 ? 's' : ''\n } over ${rangeText}`;\n } else if (currentLength) {\n return `${(\n maxLengthVal - currentLength\n ).toString()} characters remaining ${rangeText}`;\n } else {\n return rangeText;\n }\n }\n default:\n return null;\n }\n};\n\n\nexport const getFieldType = field => {\n if (!field) return null;\n if (\n field.dataType === 'string' &&\n field.editor &&\n field.editor.id === 'multiline'\n ) {\n return 'textarea';\n } else if (\n field.dataType === 'string' &&\n field.editor &&\n field.editor.id === 'list-dropdown'\n ) {\n return 'dropdown';\n } else if ((field?.editor?.properties?.readOnly) || field?.groupId === 'private' || field?.groupId === 'settings') {\n return 'hidden';\n } else if (field.dataType === 'stringArray' || field.dataType === 'boolean') {\n return 'checkbox';\n } else if (\n field.dataType === 'string' &&\n field.validations &&\n field.validations.allowedValues\n ) {\n return 'radio';\n } else if (field.dataType === 'integer') {\n return 'number';\n } else if (field.dataType === 'dateTime') {\n return 'date';\n } else if (field.dataFormat === 'daterange') {\n return 'dateRange';\n } else if (field.dataFormat === 'entry') {\n return 'entryPicker';\n } else {\n return 'textfield';\n }\n};\n","import {\n takeEvery,\n put,\n select,\n takeLatest,\n call,\n all,\n} from 'redux-saga/effects';\n\nimport {\n SET_FORM_DATA,\n SET_FORM_ID,\n SET_SUBMITTING_FORM,\n SET_FIELD_ERROR,\n SUBMIT_FORM,\n SUBMIT_FORM_SUCCESS,\n SET_SUCCESS_MESSAGE,\n SUBMIT_FORM_ERROR,\n SUBMIT_FORM_FOR_VALIDATION,\n VALIDATE_FIELD,\n SET_CURRENT_PAGE,\n PAGE_FORWARD,\n PAGE_BACK,\n SET_FORM_ENTRIES,\n SET_DEFAULT_FIELD_VALUE,\n DO_VALIDATE_FORM,\n} from './types';\n\nimport {\n selectForms,\n makeSelectFormFields,\n makeSelectFormFieldErrors,\n makeSelectFormPostData,\n} from './selectors';\n\nimport { getFormSchema, postForm, getEntries } from '../utils/api-utils';\nimport { doValidateField } from '../utils/validate-utils';\nimport { getFieldType } from '../utils/transform-utils';\nimport { selectors } from '@zengenti/contensis-react-base/routing';\n\nexport const sagas = [\n takeEvery(SUBMIT_FORM_SUCCESS, onFormSuccess),\n takeEvery(SUBMIT_FORM_FOR_VALIDATION, doValidateForm),\n takeEvery(SUBMIT_FORM, onSubmitForm),\n takeEvery(SET_FORM_ID, doFetchForm),\n takeLatest(VALIDATE_FIELD, onValidateField),\n takeEvery(PAGE_FORWARD, doTogglePage),\n takeEvery(PAGE_BACK, doTogglePage),\n takeEvery(SET_FORM_DATA, getEntryPickerData),\n takeLatest(SET_FORM_DATA, setDefaultValueFields),\n];\n\nfunction* doValidateForm(action) {\n const { formId } = action;\n yield onValidateAllFields(formId);\n yield put({\n type: SUBMIT_FORM,\n formId,\n });\n}\nfunction* onValidateField(action) {\n const { formId, id, value } = action;\n if (value?.length >= 1) yield call(onValidateSingleField, formId, id, value);\n}\nfunction* validateGroupfields(formId, groupId) {\n const state = yield select();\n\n const selectPostData = makeSelectFormPostData(formId);\n const postData = selectPostData(state)\n\n const selectFormFields = makeSelectFormFields(formId);\n const fields = selectFormFields(state);\n\n const groupFields = fields.filter(f => f.groupid == groupId);\n let newErrors = [];\n groupFields.forEach(field => {\n let val = '';\n if (postData[field.id]) {\n val = postData[field.id];\n }\n const err = doValidateField(field, val);\n if (err) newErrors.push(err);\n });\n yield put({ type: SET_FIELD_ERROR, formId: formId, value: newErrors });\n}\nfunction* onValidateAllFields(formId) {\n const state = yield select();\n const selectPostData = makeSelectFormPostData(formId);\n const postData = selectPostData(state)\n const selectFormFields = makeSelectFormFields(formId);\n const fields = selectFormFields(state);\n\n let newErrors = [];\n fields.forEach(field => {\n let val = '';\n if (postData[field.id]) {\n val = postData[field.id];\n }\n const err = doValidateField(field, val);\n if (err) newErrors.push(err);\n });\n yield put({ type: SET_FIELD_ERROR, formId: formId, value: newErrors });\n}\n\nfunction* onValidateSingleField(formId, fieldId, value) {\n const state = yield select();\n const selectFormFields = makeSelectFormFields(formId);\n const fields = selectFormFields(state);\n\n const selectFormFieldErrors = makeSelectFormFieldErrors(formId)\n const errors = selectFormFieldErrors(state);\n\n const fieldData = fields.find(f => f.id == fieldId);\n\n const newErrors = [];\n //loop through current errors to remove any of the item we currently edit\n errors.forEach(error => {\n if (error.fieldId !== fieldId) {\n //push any existing errors to new array\n newErrors.push(error);\n }\n });\n const err = doValidateField(fieldData, value);\n if (err) newErrors.push(err);\n yield put({ type: SET_FIELD_ERROR, formId: formId, value: newErrors });\n}\nfunction* doTogglePage(action) {\n const { formId, pageIndex } = action;\n const state = yield select();\n\n const selectFormGroups = makeSelectFormGroup(formId);\n const formGroups = selectFormGroups(state);\n\n if (action.type === PAGE_FORWARD) {\n yield validateGroupfields(formId, formGroups[pageIndex].id);\n }\n yield put({\n type: SET_CURRENT_PAGE,\n formId: formId,\n pageId: formGroups[pageIndex].id,\n pageCount: formGroups.length,\n pageIndex: pageIndex,\n });\n}\nfunction* doFetchForm(action) {\n const formId = action.formId;\n const schema = yield getFormSchema(formId);\n\n const groups = schema?.groups?.filter(group => (group.id !== 'private' && group.id !== 'settings'));\n\n if (formId && schema) {\n if (schema?.groups?.length > 0) {\n yield put({\n type: SET_CURRENT_PAGE,\n formId: formId,\n pageId: groups[0].id,\n pageIndex: 0,\n pageCount: groups.length,\n });\n }\n\n const submitButtonText = schema.fields.find(f => f.id === 'submitButtonText');\n const fields = schema?.fields.map(field => { \n return {\n ...field,\n type: getFieldType(field)\n }\n })\n \n yield put({\n type: SET_FORM_DATA,\n formId: formId,\n fields,\n groups: groups,\n defaultLanguage: schema.defaultLanguage,\n settings: {\n submitButtonText: submitButtonText?.default?.['en-GB'],\n }\n });\n }\n}\nfunction* onFormSuccess(action) {\n const state = yield select();\n const selectFormFields = makeSelectFormFields(action.formId);\n const fields = selectFormFields(state);\n const redirect = fields.find(f => f.id === 'formSettingsRedirect');\n const message = fields.find(f => f.id === 'formSettingsMessage');\n if (redirect?.default) {\n window.location.href = redirect.default['en-GB'];\n }\n if (message?.default) {\n const m = message.default['en-GB'];\n if (m) {\n yield put({\n type: SET_SUCCESS_MESSAGE,\n message: m,\n formId: action.formId,\n }); \n }\n }\n}\n\nfunction* onSubmitForm(action) {\n const { formId } = action || {};\n const state = yield select();\n const selectFormFieldErrors = makeSelectFormFieldErrors(formId)\n const errors = selectFormFieldErrors(state);\n\n const canSubmit = errors?.length === 0;\n if (canSubmit) {\n yield put({\n type: SET_SUBMITTING_FORM,\n isSubmitting: true,\n formId: action.formId,\n });\n const forms = yield select(selectForms);\n const rawData = forms[action.formId];\n const formObj = {\n contentType: action.formId,\n formPost: rawData.data,\n };\n const formResObj = yield postForm(formObj);\n if (formResObj?.sys?.id) {\n yield put({\n type: SUBMIT_FORM_SUCCESS,\n formId: action.formId,\n });\n } else {\n yield put({\n type: SUBMIT_FORM_ERROR,\n formId: action.formId,\n });\n }\n }\n}\n\nfunction* setDefaultValueFields(action) {\n const { formId, fields, defaultLanguage } = action;\n const entryId = yield select(selectors.selectRouteEntryEntryId);\n let fieldObj = {};\n fields.forEach(field => {\n if (field.dataType == 'string' && field.default) {\n const val = field.default[defaultLanguage];\n if (val) {\n fieldObj[field.id] = val;\n }\n }\n if (field.id == 'sourceEntry') {\n const val = entryId;\n if (val) {\n fieldObj[field.id] = val;\n }\n }\n });\n yield put({\n type: SET_DEFAULT_FIELD_VALUE,\n formId: formId,\n value: fieldObj,\n });\n}\nfunction* getEntryPickerData(action) {\n const { formId, fields } = action;\n const entriesToGet = fields.filter(f => f.dataFormat == 'entry');\n let entriesList = [];\n if (entriesToGet) {\n entriesList = yield all(\n entriesToGet.map(entry => {\n const entriesObj = {\n contentType: entry.validations.allowedContentTypes.contentTypes,\n versionStatus: 'published',\n language: 'en-GB',\n pageSize: '10',\n };\n return call(getEntries, entriesObj, entry.id);\n })\n );\n yield put({\n type: SET_FORM_ENTRIES,\n formId: formId,\n entries: entriesList,\n });\n }\n}\n","import {\n SET_FORM_ID,\n SET_FIELD_VALUE,\n SUBMIT_FORM_FOR_VALIDATION,\n VALIDATE_FIELD,\n PAGE_FORWARD,\n PAGE_BACK,\n SET_DATE_RANGE_VALUES,\n SET_CHECKBOX_VALUE,\n} from './types';\n\nconst action = (type, payload = {}) => ({ type, ...payload });\n\nexport const onSubmit = formId =>\n action(SUBMIT_FORM_FOR_VALIDATION, { formId });\nexport const setFormId = formId => action(SET_FORM_ID, { formId });\nexport const setValue = (formId, id, value) =>\n action(SET_FIELD_VALUE, { formId, id, value });\nexport const setCheckboxValue = (formId, id, value, isChecked) =>\n action(SET_CHECKBOX_VALUE, { formId, id, value, isChecked });\nexport const setDateRangeValues = (formId, id, dateType, value) =>\n action(SET_DATE_RANGE_VALUES, { formId, id, dateType, value });\nexport const onValidateField = (formId, id, value) =>\n action(VALIDATE_FIELD, { formId, id, value });\nexport const doTogglePageForward = (formId, pageIndex) =>\n action(PAGE_FORWARD, { formId, pageIndex });\nexport const doTogglePageBack = (formId, pageIndex) =>\n action(PAGE_BACK, { formId, pageIndex });\n\n\nexport const actions = {\n onSubmit,\n setFormId,\n setValue,\n setCheckboxValue,\n setDateRangeValues,\n onValidateField,\n doTogglePageForward,\n doTogglePageBack,\n }\n","import React, { createContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { ThemeProvider as BaseThemeProvider } from 'styled-components';\n\nconst ThemeContext = createContext();\n\nconst ThemeProvider = ({ children, theme }) => {\n return (\n <ThemeContext.Provider value=\"\">\n <BaseThemeProvider theme={theme}>{children}</BaseThemeProvider>\n </ThemeContext.Provider>\n );\n};\n\nThemeProvider.propTypes = {\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node,\n ]),\n theme: PropTypes.object,\n};\n\nexport { ThemeProvider };\n","const colors = {\n white: '#fff',\n black: '#000',\n dark_grey_lighter: '#757575',\n dark_grey_lightest: '#595959',\n dark_grey_light: '#444',\n dark_grey_dark: '#333',\n dark_grey_darker: '#262626',\n dark_grey_darkest: '#1F1F1F',\n light_grey_lightest: '#FAFAFA',\n light_grey_lighter: '#FDFDFD',\n light_grey_light: '#F0F0F0',\n light_grey_dark: '#DBDBDB',\n light_grey_darker: '#CCCCCC',\n light_grey_darkest: '#949494',\n green_lightest: '#D5FCE9',\n green_lighter: '#A3F2CD',\n green_light: '#74D8A8',\n green_dark: '#0FCE72',\n green_darker: '#008A48',\n green_darkest: '#008545',\n red_lightest: '#F9D7D7',\n red_lighter: '#F4B5B5',\n red_light: '#F67979',\n red_dark: '#d42d2d',\n red_darker: '#ca2121',\n red_darkest: '#B71A1A',\n}\n\nexport default colors;\n","import colors from './colors';\n\nexport const defaultTheme = { colors };\n","import styled, { css } from 'styled-components';\n\nconst FormStyled = styled.form`\n ${({ theme, useDefaultTheme }) => {\n return css`\n ${useDefaultTheme &&\n css`\n > div:not(:first-child) {\n margin-top: 16px;\n }\n padding: 0 16px;\n .success-message {\n font-size: 18px;\n margin: 0;\n }\n .visuallyHidden {\n position: absolute;\n left: -10000px;\n top: auto;\n width: 1px;\n height: 1px;\n overflow: hidden;\n }\n .loading {\n display: block;\n margin: 24px auto;\n }\n label {\n display: inline-block;\n .isRequired {\n color: ${theme.colors.red_darker};\n }\n }\n input,\n textarea,\n select {\n display: block;\n font-family: inherit;\n background-color: ${theme.colors.white};\n border-radius: 3px;\n border: 1px solid ${theme.colors.light_grey_darkest};\n height: 40px;\n padding: 8px;\n margin-top: 4px;\n width: 100%;\n }\n input:-webkit-autofill,\n input:-webkit-autofill:hover, \n input:-webkit-autofill:focus, \n input:-webkit-autofill:active{\n -webkit-box-shadow: 0 0 0 30px ${theme.colors.white} inset;\n }\n textarea {\n height: 200px;\n resize: none;\n }\n [aria-invalid='false']{\n background: ${theme.colors.green_lightest};\n border: 1px solid ${theme.colors.green_darker};\n &:-webkit-autofill,\n &:-webkit-autofill:hover, \n &:-webkit-autofill:focus, \n &:-webkit-autofill:active{\n -webkit-box-shadow: 0 0 0 30px${theme.colors.green_lightest} inset;\n }\n }\n [aria-invalid='true']{\n background: ${theme.colors.red_lightest};\n border: 1px solid ${theme.colors.red_darker};\n &:-webkit-autofill,\n &:-webkit-autofill:hover, \n &:-webkit-autofill:focus, \n &:-webkit-autofill:active{\n -webkit-box-shadow: 0 0 0 30px${theme.colors.red_lightest} inset;\n }\n }\n input ~ .svg {\n position: absolute;\n right: 8px;\n top: 50%;\n transform: translateY(-50%);\n }\n textarea ~ .svg {\n position: absolute;\n right: 8px;\n top: 8px;\n }\n `}\n `;\n }};\n`;\n\nexport default FormStyled;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst Label = ({ className, label, id, isRequired, isHidden }) => {\n return (\n <label\n className={`${className} ${isHidden ? 'visuallyHidden' : ''}`}\n htmlFor={id}\n >\n {label}\n {isRequired && <span className=\"isRequired\">*</span>}\n {isRequired && <span className=\"visuallyHidden\"> (required)</span>}\n </label>\n );\n};\n\nLabel.propTypes = {\n className: PropTypes.string,\n label: PropTypes.string,\n id: PropTypes.string,\n isRequired: PropTypes.bool,\n isHidden: PropTypes.bool,\n};\n\nexport default Label;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport styled, { css } from 'styled-components';\nimport { doCreateMessage } from 'zengenti-forms-package/utils/transform-utils';\n\nconst CharacterLimitStyled = styled.div`\n ${({ theme, useDefaultTheme }) => {\n return css`\n display: block;\n ${useDefaultTheme &&\n css`\n font-size: 14px;\n color: ${theme.colors.neutrals.empress_gray};\n font-weight: 400;\n line-height: 24px;\n text-align: right;\n max-width: 320px;\n width: 100%;\n `}\n `;\n }};\n`;\n\nexport const CharacterLimit = ({\n className,\n value,\n validations,\n defaultLanguage,\n useDefaultTheme,\n}) => {\n if (!validations) return null;\n let valueAsString = typeof value === 'number' ? value.toString() : value;\n const currentLength =\n valueAsString && valueAsString.length ? valueAsString.length : 0;\n const { minLength, maxLength } = validations;\n const hasMaxLength = maxLength && !minLength;\n const hasMinLength = minLength && !maxLength;\n const hasInBetween = minLength && maxLength;\n const type = hasMinLength\n ? 'min'\n : hasMaxLength\n ? 'max'\n : hasInBetween\n ? 'between'\n : null;\n if (!type) return null;\n return (\n <CharacterLimitStyled\n className={className}\n useDefaultTheme={useDefaultTheme}\n >\n {doCreateMessage(\n type,\n minLength,\n maxLength,\n currentLength,\n defaultLanguage\n )}\n </CharacterLimitStyled>\n );\n};\n\nCharacterLimit.propTypes = {\n validations: PropTypes.object,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n className: PropTypes.string,\n defaultLanguage: PropTypes.string,\n useDefaultTheme: PropTypes.bool,\n};\n","import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { useSelector } from 'react-redux'\nimport styled, { css } from 'styled-components';\nimport { doA11yValidation } from 'zengenti-forms-package/utils/validate-utils';\nimport Label from '../label/label';\nimport { makeSelectFormValidationSent } from 'zengenti-forms-package/redux/selectors';\nimport { CharacterLimit } from 'zengenti-forms-package/components/charaterlimit'\n\nconst TextfieldStyled = styled.div`\n ${({ isHidden }) => {\n return css`\n display: ${isHidden ? 'none' : 'block'};\n `;\n }};\n`;\n\nconst Textfield = ({\n className,\n field,\n formId,\n id,\n label,\n type,\n setValue,\n onValidateField,\n validations,\n defaultValue,\n defaultLanguage,\n placeholder,\n isHidden,\n useDefaultTheme,\n}) => {\n const [hasCharLimit, setCharLimit] = useState(false);\n const isRequired = validations && validations.required ? true : false;\n const placeholderText =\n placeholder &&\n placeholder.properties &&\n placeholder.properties.placeholderText &&\n placeholder.properties.placeholderText[defaultLanguage];\n\n\n const defaultValueText =\n defaultValue && defaultValue[defaultLanguage]\n ? defaultValue[defaultLanguage]\n : defaultValue;\n \n \n const [a11yInvalid, setA11yInvalid] = useState('');\n const [_, setTextfieldValue] = useState(defaultValueText || ''); \n const selectFormValidationSent = makeSelectFormValidationSent(formId);\n const formValidationSent = useSelector(selectFormValidationSent);\n useEffect(() => {\n if (formValidationSent) setA11yInvalid(doA11yValidation(_, field, true));\n }, [formValidationSent])\n \n return (\n <TextfieldStyled className={className} isHidden={isHidden}>\n <Label\n id={id}\n label={label}\n isRequired={isRequired}\n className=\"text-field__label\"\n />\n {hasCharLimit && (\n <CharacterLimit\n value={defaultValue}\n validations={validations}\n defaultLanguage={defaultLanguage}\n useDefaultTheme={useDefaultTheme}\n />\n )}\n <div className=\"text-field__input--wrapper\" style={{ position: 'relative'}}>\n <input\n className='text-field__input'\n type={type}\n defaultValue={defaultValueText}\n placeholder={placeholderText}\n aria-invalid={a11yInvalid}\n id={id}\n name={id}\n onChange={e => {\n setTextfieldValue(e.target.value);\n setValue(formId, id, e.target.value);\n }}\n onBlur={e => {\n onValidateField(formId, id, e.target.value);\n setCharLimit(false);\n setA11yInvalid(doA11yValidation(e.target.value, field, formValidationSent))\n }}\n onFocus={() => {\n setCharLimit(true);\n }}\n />\n {a11yInvalid == 'true' && (\n <svg className=\"svg\" xmlns=\"http://www.w3.org/2000/svg\" focusable=\"false\" aria-hidden=\"true\" role=\"presentation\" width=\"16\" height=\"16\" fill=\"none\"><path fill=\"#333\" d=\"M12.2 3.807a.664.664 0 0 0-.94 0L8 7.06 4.74 3.8a.665.665 0 0 0-.94.94L7.06 8 3.8 11.26a.664.664 0 1 0 .94.94L8 8.94l3.26 3.26a.665.665 0 0 0 .94-.94L8.94 8l3.26-3.26a.668.668 0 0 0 0-.933Z\"/></svg>\n )}\n {a11yInvalid == 'false' && (\n <svg className=\"svg\" xmlns=\"http://www.w3.org/2000/svg\" focusable=\"false\" aria-hidden=\"true\" role=\"presentation\" width=\"16\" height=\"16\" fill=\"none\"><path fill=\"#333\" d=\"m2 8 4.418 4.667L14 4.659l-1.246-1.326-6.336 6.692-3.18-3.332L2 8Z\"/></svg>\n )}\n </div>\n </TextfieldStyled>\n );\n};\n\nTextfield.propTypes = {\n className: PropTypes.string,\n field: PropTypes.any,\n formId: PropTypes.string,\n id: PropTypes.string,\n label: PropTypes.string,\n type: PropTypes.string,\n setValue: PropTypes.func,\n onValidateField: PropTypes.func,\n validations: PropTypes.object,\n defaultValue: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n defaultLanguage: PropTypes.string,\n placeholder: PropTypes.object,\n isHidden: PropTypes.bool,\n errors: PropTypes.array,\n useDefaultTheme: PropTypes.bool,\n};\n\nexport default Textfield;\n","import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport Label from '../label/label';\nimport { doA11yValidation } from 'zengenti-forms-package/utils/validate-utils';\nimport { makeSelectFormValidationSent } from 'zengenti-forms-package/redux/selectors';\nimport { useSelector } from 'react-redux'\nimport { CharacterLimit } from 'zengenti-forms-package/components/charaterlimit';\n\nconst Textarea = ({\n className,\n field,\n formId,\n id,\n label,\n type,\n setValue,\n validations,\n defaultValue,\n defaultLanguage,\n placeholder,\n onValidateField,\n useDefaultTheme,\n}) => {\n const [showCharLimit, setShowCharLimit] = useState(false);\n const isRequired = validations && validations.required ? true : false;\n const placeholderText =\n placeholder &&\n placeholder.properties &&\n placeholder.properties.placeholderText &&\n placeholder.properties.placeholderText[defaultLanguage];\n const defaultValueText = defaultValue ? defaultValue[defaultLanguage] : null;\n\n const [a11yInvalid, setA11yInvalid] = useState('');\n const [_, setTextareaValue] = useState(defaultValueText || ''); \n const selectFormValidationSent = makeSelectFormValidationSent(formId);\n const formValidationSent = useSelector(selectFormValidationSent);\n useEffect(() => {\n if (formValidationSent) setA11yInvalid(doA11yValidation(_, field, true));\n }, [formValidationSent])\n\n return (\n <div className={className}>\n <Label\n id={id}\n label={label}\n isRequired={isRequired}\n className=\"text-area__label\"\n />\n {showCharLimit && (\n <CharacterLimit\n value={defaultValue}\n validations={validations}\n defaultLanguage={defaultLanguage}\n useDefaultTheme={useDefaultTheme}\n />\n )}\n <div className=\"text-area__input--wrapper\" style={{ position: 'relative'}}>\n <textarea\n className='text-area__input'\n type={type}\n id={id}\n defaultValue={defaultValueText}\n placeholder={placeholderText}\n aria-invalid={a11yInvalid}\n onChange={e => {\n setTextareaValue(e.target.value)\n setValue(formId, id, e.target.value);\n }}\n onBlur={e => {\n onValidateField(formId, id, e.target.value);\n setShowCharLimit(false);\n setA11yInvalid(doA11yValidation(e.target.value, field, formValidationSent))\n }}\n onFocus={() => { \n setShowCharLimit(true);\n }}\n />\n {a11yInvalid == 'true' && (\n <svg className=\"svg\" xmlns=\"http://www.w3.org/2000/svg\" focusable=\"false\" aria-hidden=\"true\" role=\"presentation\" width=\"16\" height=\"16\" fill=\"none\"><path fill=\"#333\" d=\"M12.2 3.807a.664.664 0 0 0-.94 0L8 7.06 4.74 3.8a.665.665 0 0 0-.94.94L7.06 8 3.8 11.26a.664.664 0 1 0 .94.94L8 8.94l3.26 3.26a.665.665 0 0 0 .94-.94L8.94 8l3.26-3.26a.668.668 0 0 0 0-.933Z\"/></svg>\n )}\n {a11yInvalid == 'false' && (\n <svg className=\"svg\" xmlns=\"http://www.w3.org/2000/svg\" focusable=\"false\" aria-hidden=\"true\" role=\"presentation\" width=\"16\" height=\"16\" fill=\"none\"><path fill=\"#333\" d=\"m2 8 4.418 4.667L14 4.659l-1.246-1.326-6.336 6.692-3.18-3.332L2 8Z\"/></svg>\n )}\n </div>\n </div>\n );\n};\n\nTextarea.propTypes = {\n className: PropTypes.string,\n field: PropTypes.any,\n formId: PropTypes.string,\n id: PropTypes.string,\n label: PropTypes.string,\n type: PropTypes.string,\n setValue: PropTypes.func,\n validations: PropTypes.object,\n defaultValue: PropTypes.object,\n defaultLanguage: PropTypes.string,\n placeholder: PropTypes.object,\n onValidateField: PropTypes.func,\n useDefaultTheme: PropTypes.bool,\n errors: PropTypes.array,\n};\n\nexport default Textarea;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Textfield from '../textfield/textfield';\n\nconst HiddenField = ({\n className,\n id,\n label,\n type,\n defaultValue,\n defaultLanguage,\n placeholder,\n}) => {\n return (\n <Textfield\n type={type}\n label={label}\n id={id}\n defaultValue={defaultValue}\n defaultLanguage={defaultLanguage}\n placeholder={placeholder}\n className={className}\n isHidden={true}\n />\n );\n};\n\nHiddenField.propTypes = {\n className: PropTypes.string,\n id: PropTypes.string,\n label: PropTypes.string,\n type: PropTypes.string,\n defaultValue: PropTypes.object,\n defaultLanguage: PropTypes.string,\n placeholder: PropTypes.object,\n};\n\nexport default HiddenField;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Label from '../label/label';\n\nconst Dropdown = ({\n className,\n formId,\n id,\n validations,\n defaultValue,\n defaultLanguage,\n label,\n setValue,\n}) => {\n if (!validations) return null;\n const isRequired = validations && validations.required ? true : false;\n const ddValues =\n validations &&\n validations.allowedValues &&\n validations.allowedValues.values;\n\n if (!ddValues || ddValues.length < 1) return null;\n return (\n <div className=\"dropdown-container\">\n <Label\n id={id}\n label={label}\n isRequired={isRequired}\n className=\"label-dropdown\"\n />\n <select\n name={id}\n id={id}\n className={`${className ? className : ''} select-dropdown`}\n defaultValue={defaultValue}\n onBlur={e => {\n setValue(formId, id, e.target.value);\n }}\n >\n {ddValues.map((val, idx) => {\n return (\n <option\n key={`${val[defaultLanguage]}-${idx}`}\n value={val[defaultLanguage]}\n className=\"option-dropdown\"\n >\n {val[defaultLanguage]}\n </option>\n );\n })}\n </select>\n </div>\n );\n};\n\nDropdown.propTypes = {\n className: PropTypes.string,\n formId: PropTypes.string,\n setValue: PropTypes.func,\n id: PropTypes.string,\n validations: PropTypes.object,\n defaultValue: PropTypes.string,\n label: PropTypes.string,\n defaultLanguage: PropTypes.string,\n};\n\nexport default Dropdown;\n","import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport styled, { css } from 'styled-components';\nimport Label from '../label/label';\n\nconst CheckboxStyled = styled.div`\n ${({ useDefaultTheme }) => {\n return css`\n ${useDefaultTheme &&\n css`\n .checkbox-wrapper {\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-start;\n align-items: center;\n input {\n height: auto;\n width: auto;\n margin: 0 4px 0 0;\n }\n label {\n display: inline-block;\n }\n }\n `}\n `;\n }};\n`;\n\nconst Checkbox = ({\n className,\n formId,\n setCheckboxValue,\n id,\n type,\n label,\n validations,\n defaultValue,\n name,\n defaultLanguage,\n useDefaultTheme,\n}) => {\n // NF change rules of hooks\n let isDefaultChecked = defaultValue && defaultValue[defaultLanguage];\n const [isChecked, setIsChecked] = useState(isDefaultChecked || '');\n\n switch (type) {\n case 'multiple': {\n if (!validations) return null;\n const isRequired = validations && validations.required ? true : false;\n const cbValues =\n validations &&\n validations.allowedValues &&\n validations.allowedValues.values;\n\n const _handleChange = (value, isChecked) => {\n setCheckboxValue(formId, id, value, isChecked);\n };\n\n if (!cbValues || cbValues.length < 1) return null;\n return (\n <CheckboxStyled\n className={`checkbox-container`}\n useDefaultTheme={useDefaultTheme}\n >\n <Label\n id={id}\n label={label}\n isRequired={isRequired}\n className=\"label-checkbox-container\"\n />\n {cbValues.map((val, idx) => {\n return (\n <span key={idx} className=\"checkbox-wrapper\">\n <input\n type=\"checkbox\"\n id={`checkbox-${idx}`}\n name={`checkbox-${idx}`}\n value={val[defaultLanguage]}\n className={`${className ? className : ''} input-checkbox`}\n onChange={e =>\n _handleChange(e.target.value, e.target.checked)\n }\n />\n <Label\n id={`checkbox-${idx}`}\n label={val[defaultLanguage]}\n className=\"label-checkbox\"\n />\n </span>\n );\n })}\n </CheckboxStyled>\n );\n }\n case 'single': {\n const _handleChange = isChecked => {\n setIsChecked(isChecked);\n setCheckboxValue(formId, id, isChecked);\n };\n return (\n <CheckboxStyled\n className={`checkbox-container`}\n useDefaultTheme={useDefaultTheme}\n >\n <span className=\"checkbox-wrapper\">\n <input\n type=\"checkbox\"\n id={id}\n name={`checkbox-${id}`}\n value={name[defaultLanguage]}\n checked={isChecked}\n className={`${className ? className : ''} input-checkbox`}\n onChange={e => _handleChange(e.target.checked)}\n />\n <Label id={id} label={label} className=\"label-checkbox\" />\n </span>\n </CheckboxStyled>\n );\n }\n }\n};\n\nCheckbox.propTypes = {\n className: PropTypes.string,\n formId: PropTypes.string,\n id: PropTypes.string,\n type: PropTypes.string,\n label: PropTypes.string,\n setCheckboxValue: PropTypes.func,\n validations: PropTypes.object,\n defaultLanguage: PropTypes.string,\n name: PropTypes.object,\n default: PropTypes.object,\n};\n\nexport default Checkbox;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport styled, { css } from 'styled-components';\nimport Label from '../label/label';\n\nconst RadioButtonStyled = styled.div`\n ${({ useDefaultTheme }) => {\n return css`\n ${useDefaultTheme &&\n css`\n .radio-wrapper {\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-start;\n align-items: center;\n input {\n height: auto;\n width: auto;\n margin: 0 4px 0 0;\n }\n label {\n display: inline-block;\n }\n }\n `}\n `;\n }};\n`;\n\nconst RadioButton = ({\n className,\n formId,\n setValue,\n id,\n type,\n label,\n validations,\n defaultLanguage,\n useDefaultTheme,\n}) => {\n if (!validations) return null;\n const isRequired = validations && validations.required ? true : false;\n const cbValues =\n validations &&\n validations.allowedValues &&\n validations.allowedValues.values;\n\n if (!cbValues || cbValues.length < 1) return null;\n return (\n <RadioButtonStyled\n className=\"radio-container\"\n useDefaultTheme={useDefaultTheme}\n >\n <Label\n id={id}\n label={label}\n isRequired={isRequired}\n className=\"label-radio-container\"\n />\n {cbValues.map((val, idx) => {\n return (\n <span key={idx} className=\"radio-wrapper\">\n <input\n type={type}\n id={val[defaultLanguage]}\n name={id}\n value={val[defaultLanguage]}\n className={`${className ? className : ''} input-radio`}\n onChange={e => {\n setValue(formId, id, e.target.value);\n }}\n />\n <Label\n id={val[defaultLanguage]}\n label={val[defaultLanguage]}\n className=\"label-radio\"\n />\n </span>\n );\n })}\n </RadioButtonStyled>\n );\n};\n\nRadioButton.propTypes = {\n className: PropTypes.string,\n formId: PropTypes.string,\n setValue: PropTypes.func,\n id: PropTypes.string,\n type: PropTypes.string,\n label: PropTypes.string,\n validations: PropTypes.object,\n defaultLanguage: PropTypes.string,\n useDefaultTheme: PropTypes.bool,\n};\n\nexport default RadioButton;\n","//example date string: 2019-01-02T13:05:00 (expects ISO 8601 Datetime format yyyy-mm-ddThh:mm:ss [this is the format returned from Contensis delivery api])\n//yyyy > year long, eg. 2019\n//yy > year short, eg. 19\n//MMMM > month long, eg. January\n//MMM > month short, eg. Jan\n//MM > month with leading 0, eg. 01\n//M > month, eg. 1\n//dddd > day long, eg. Monday\n//ddd > day short, eg. Mon\n//dd > date with leading 0, eg. 02\n//d > date, eg. 2\n//HH > 24 hour clock hour parameter with leading 0, eg. ...T03:05:00 = 03\n//H > 24 hour clock hour parameter, eg. ...T03:05:00 = 3\n//hh > 12 hour clock hour parameter with leading 0, eg. ...T16:05:00 = 04\n//h > 12 hour clock hour parameter, eg. ...T16:05:00 = 4\n//mm > minutes with leading 0, eg. ...T16:05:00 = 05\n//m > minutes, eg ...T16:05:00 = 5\n//t > abbreviated AM / PM, e.g. A or P\n//tt > AM / PM, e.g. AM or PM\n\nconst formatDate = (date, format = 'dd MMMM yyyy') => {\n if (!date) return null;\n const dateObj = new Date(date);\n const dateString = date.toString().split('T');\n const dateArr = dateString[0].split('-');\n const year = dateArr[0];\n const month = dateArr[1];\n const day = dateArr[2];\n const dayNameInt = dateObj.getDay();\n const timeArr = dateString[1].split(':');\n const hour = timeArr[0];\n const minute = timeArr[1];\n\n //convert to abstract strings to avoid character replacement along the chain, eg. Monday would match 'M' month single parameter\n const YEAR = ['&&', '&'];\n const MONTH = ['££££', '£££', '££', '£'];\n const DAY = ['%%%%', '%%%', '%%', '%'];\n const HOUR24 = ['!!', '!'];\n const HOUR12 = ['^^', '^'];\n const MINUTE = ['**', '*'];\n const TF = ['??', '?'];\n\n let formattedDate = format\n .replace('yyyy', YEAR[0])\n .replace('yy', YEAR[1])\n .replace('y', '') //'y' && 'yyy' not valid\n .replace('MMMM', MONTH[0])\n .replace('MMM', MONTH[1])\n .replace('MM', MONTH[2])\n .replace('M', MONTH[3])\n .replace('dddd', DAY[0])\n .replace('ddd', DAY[1])\n .replace('dd', DAY[2])\n .replace('d', DAY[3])\n .replace('HH', HOUR24[0])\n .replace('H', HOUR24[1])\n .replace('hh', HOUR12[0])\n .replace('h', HOUR12[1])\n .replace('mm', MINUTE[0])\n .replace('m', MINUTE[1])\n .replace('tt', TF[0])\n .replace('t', TF[1])\n .replace(YEAR[0], year)\n .replace(YEAR[1], year.slice(-2))\n .replace(MONTH[0], monthsLong[parseInt(month, 10)])\n .replace(MONTH[1], monthsShort[parseInt(month, 10)])\n .replace(MONTH[2], month)\n .replace(MONTH[3], parseInt(month, 10))\n .replace(DAY[0], daysLong[dayNameInt])\n .replace(DAY[1], daysShort[dayNameInt])\n .replace(DAY[2], day)\n .replace(DAY[3], parseInt(day, 10))\n .replace(HOUR24[0], hour)\n .replace(HOUR24[1], parseInt(hour, 10))\n .replace(HOUR12[0], parseHour(hour))\n .replace(HOUR12[1], parseInt(parseHour(hour), 10))\n .replace(MINUTE[0], minute)\n .replace(MINUTE[1], parseInt(minute, 10))\n .replace(TF[0], parseTF(hour))\n .replace(TF[1], parseTF(hour).slice(0, -1));\n\n return formattedDate;\n};\n\nconst monthsShort = [\n '',\n 'Jan',\n 'Feb',\n 'Mar',\n 'Apr',\n 'May',\n 'Jun',\n 'Jul',\n 'Aug',\n 'Sep',\n 'Oct',\n 'Nov',\n 'Dec',\n];\n\nconst monthsLong = [\n '',\n 'January',\n 'February',\n 'March',\n 'April',\n 'May',\n 'June',\n 'July',\n 'August',\n 'September',\n 'October',\n 'November',\n 'December',\n];\n\nconst daysShort = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'];\n\nconst daysLong = [\n 'Sunday',\n 'Monday',\n 'Tuesday',\n 'Wednesday',\n 'Thursday',\n 'Friday',\n 'Saturday',\n];\n\nconst parseHour = hour => {\n return hour > 12 ? hour - 12 : hour;\n};\n\nconst parseTF = hour => {\n return hour > 11 ? 'PM' : 'AM';\n};\n\nexport default formatDate;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Label from '../label/label';\nimport formatDate from 'zengenti-forms-package/utils/format-date';\n\nconst SingleDate = ({\n className,\n type,\n id,\n label,\n validations,\n setValue,\n formId,\n}) => {\n const isRequired = validations && validations.required ? true : false;\n const onlyPassedDates = validations && validations.pastDateTime;\n\n const d = new Date();\n const todaysDate = d.toISOString();\n\n const _handleChange = (formId, id, value) => {\n const d = new Date(value);\n const isoDate = d.toISOString();\n setValue(formId, id, isoDate);\n };\n return (\n <div className=\"date-container\">\n <Label\n id={id}\n label={label}\n isRequired={isRequired}\n className=\"label-date\"\n />\n <input\n type={type}\n id={id}\n name={id}\n className={`${className ? className : ''} input-date`}\n max={onlyPassedDates ? formatDate(todaysDate, 'yyyy-MM-dd') : ''}\n onChange={e => _handleChange(formId, id, e.target.value)}\n />\n </div>\n );\n};\n\nSingleDate.propTypes = {\n className: PropTypes.string,\n formId: PropTypes.string,\n setValue: PropTypes.func,\n type: PropTypes.string,\n id: PropTypes.string,\n label: PropTypes.string,\n validations: PropTypes.object,\n};\n\nexport default SingleDate;\n","import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport Label from '../label/label';\nimport styled, { css } from 'styled-components';\nimport formatDate from 'zengenti-forms-package/utils/format-date';\n\nconst DateRangeStyled = styled.div`\n ${({ useDefaultTheme }) => {\n return css`\n ${useDefaultTheme &&\n css`\n .daterange-wrapper {\n display: flex;\n flex-direction: column;\n input {\n &:first-child {\n margin: 0 0 8px 0;\n }\n }\n }\n `}\n `;\n }};\n`;\n\nconst DateRange = ({\n className,\n id,\n label,\n validations,\n setDateRangeValues,\n formId,\n useDefaultTheme,\n}) => {\n const isRequired = validations && validations.required ? true : false;\n const onlyPassedDates = validations && validations.pastDateTime;\n\n const d = new Date();\n const todaysDate = d.toISOString();\n\n const [toDate, setToDate] = useState('');\n const [fromDate, setFromDate] = useState('');\n\n const _handleDateChange = (dateType, formId, id, value) => {\n _updateDateProps(dateType, value);\n const d = new Date(value);\n const isoDate = d.toISOString();\n setDateRangeValues(formId, id, dateType, isoDate);\n };\n\n const _updateDateProps = (type, date) => {\n switch (type) {\n case 'from': {\n const d = new Date(date);\n const newDate = d.toISOString();\n setFromDate(newDate);\n break;\n }\n case 'to': {\n const d = new Date(date);\n const newDate = d.toISOString();\n setToDate(newDate);\n break;\n }\n default:\n return;\n }\n };\n return (\n <DateRangeStyled\n className={`daterange-container`}\n useDefaultTheme={useDefaultTheme}\n >\n <Label id={id} label={label} isRequired={isRequired} />\n <div className=\"daterange-wrapper\">\n <Label\n id=\"date-from\"\n label=\"Date from\"\n isHidden\n className=\"label-daterange\"\n />\n <input\n type=\"date\"\n id=\"date-from\"\n name={id}\n max={\n onlyPassedDates && !toDate\n ? formatDate(todaysDate, 'yyyy-MM-dd')\n : onlyPassedDates && toDate\n ? formatDate(toDate, 'yyyy-MM-dd')\n : toDate\n ? formatDate(toDate, 'yyyy-MM-dd')\n : ''\n }\n className={`${className ? className : ''} input-daterange`}\n onChange={e => _handleDateChange('from', formId, id, e.target.value)}\n />\n <Label\n id=\"date-to\"\n label=\"Date to\"\n isHidden\n className=\"label-daterange\"\n />\n <input\n type=\"date\"\n id=\"date-to\"\n name={id}\n max={onlyPassedDates ? formatDate(todaysDate, 'yyyy-MM-dd') : ''}\n min={formatDate(fromDate, 'yyyy-MM-dd')}\n className={`${className ? className : ''} input-daterange`}\n onChange={e => _handleDateChange('to', formId, id, e.target.value)}\n />\n </div>\n </DateRangeStyled>\n );\n};\n\nDateRange.propTypes = {\n className: PropTypes.string,\n formId: PropTypes.string,\n setDateRangeValues: PropTypes.func,\n type: PropTypes.string,\n id: PropTypes.string,\n label: PropTypes.string,\n validations: PropTypes.object,\n useDefaultTheme: PropTypes.bool,\n};\n\nexport default DateRange;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Label from '../label/label';\nimport styled, { css } from 'styled-components';\n\nconst EntryPickerStyled = styled.div`\n ${({ useDefaultTheme }) => {\n return css`\n ${useDefaultTheme &&\n css`\n .radio-wrapper,\n .checkbox-wrapper {\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-start;\n align-items: center;\n input {\n height: auto;\n width: auto;\n margin: 0 4px 0 0;\n }\n label {\n display: inline-block;\n }\n }\n `}\n `;\n }};\n`;\n\nconst EntryPicker = ({\n className,\n results,\n id,\n label,\n validations,\n type,\n useDefaultTheme,\n setValue,\n formId,\n}) => {\n if (!results || results.length > 3) return null;\n const isRequired = validations && validations.required ? true : false;\n\n let valArr = [];\n const _handleChange = (formId, id, value, isChecked) => {\n if (type === 'checkbox') {\n if (isChecked) {\n valArr.push(value);\n } else if (!isChecked) {\n valArr = valArr.filter(valItem => valItem !== value);\n }\n setValue(formId, id, valArr);\n } else {\n setValue(formId, id, value);\n }\n };\n return (\n <EntryPickerStyled\n className={`${type}-container`}\n useDefaultTheme={useDefaultTheme}\n >\n <Label\n id={id}\n label={label}\n isRequired={isRequired}\n className={`label-${type}-container`}\n />\n {results.map((res, idx) => {\n return (\n <span key={idx} className={`${type}-wrapper`}>\n <input\n type={type}\n id={res.entryTitle}\n value={res.entryTitle}\n name={id}\n className={`${className ? className : ''} input-${type}`}\n onChange={e =>\n _handleChange(formId, id, e.target.value, e.target.checked)\n }\n />\n <Label\n id={res.entryTitle}\n label={res.entryTitle}\n className={`label-${type}`}\n />\n </span>\n );\n })}\n </EntryPickerStyled>\n );\n};\n\nEntryPicker.propTypes = {\n className: PropTypes.string,\n results: PropTypes.array,\n id: PropTypes.string,\n label: PropTypes.string,\n validations: PropTypes.object,\n type: PropTypes.string,\n useDefaultTheme: PropTypes.bool,\n setValue: PropTypes.func,\n formId: PropTypes.string,\n};\n\nexport default EntryPicker;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {\n Textarea,\n Textfield,\n HiddenField,\n DropDown,\n Checkbox,\n RadioButton,\n SingleDate,\n DateRange,\n EntryPicker,\n} from '../../components/fields';\n\nconst FormComposer = ({\n fields,\n formData,\n formId,\n setValue,\n setDateRangeValues,\n onValidateField,\n defaultLanguage,\n errors,\n useDefaultTheme,\n entries,\n setCheckboxValue,\n}) => {\n\n if (!fields || fields.length < 1) return null;\n return fields.map((field, idx) => {\n if (!field) return null;\n switch (field.type) {\n case 'number':\n case 'textfield': {\n return (\n <Textfield\n key={`${field.id}-${idx}`}\n field={field}\n type={field.type}\n id={field.id}\n label={field.name && field.name[defaultLanguage]}\n formId={formId}\n setValue={setValue}\n validations={field.validations}\n onValidateField={onValidateField}\n defaultLanguage={defaultLanguage}\n defaultValue={(formData && formData[field.id]) || field.default}\n placeholder={field.editor}\n errors={errors}\n useDefaultTheme={useDefaultTheme}\n />\n );\n }\n case 'textarea': {\n return (\n <Textarea\n key={`${field.id}-${idx}`}\n field={field}\n type={field.type}\n id={field.id}\n label={field.name && field.name[defaultLanguage]}\n formId={formId}\n setValue={setValue}\n validations={field.validations}\n defaultLanguage={defaultLanguage}\n defaultValue={field.default}\n placeholder={field.editor}\n onValidateField={onValidateField}\n useDefaultTheme={useDefaultTheme}\n errors={errors}\n />\n );\n }\n case 'dropdown': {\n return (\n <DropDown\n key={`${field.id}-${idx}`}\n id={field.id}\n label={field.name && field.name[defaultLanguage]}\n validations={field.validations}\n defaultLanguage={defaultLanguage}\n defaultValue={field.default}\n formId={formId}\n setValue={setValue}\n useDefaultTheme={useDefaultTheme}\n />\n );\n }\n case 'checkbox': {\n return (\n <Checkbox\n key={`${field.id}-${idx}`}\n id={field.id}\n name={field.name}\n label={field.name && field.name[defaultLanguage]}\n validations={field.validations}\n defaultLanguage={defaultLanguage}\n setValue={setValue}\n formId={formId}\n defaultValue={(formData && formData[field.id]) || field.default}\n type={field.dataType === 'boolean' ? 'single' : 'multiple'}\n useDefaultTheme={useDefaultTheme}\n setCheckboxValue={setCheckboxValue}\n />\n );\n }\n case 'radio': {\n return (\n <RadioButton\n key={`${field.id}-${idx}`}\n id={field.id}\n type={field.type}\n formId={formId}\n setValue={setValue}\n label={field.name && field.name[defaultLanguage]}\n validations={field.validations}\n defaultLanguage={defaultLanguage}\n useDefaultTheme={useDefaultTheme}\n />\n );\n }\n case 'entryPicker': {\n const type = field.dataType === 'objectArray' ? 'checkbox' : 'radio';\n const results = entries && entries[field.id] && entries[field.id].items;\n return (\n <EntryPicker\n key={`${field.id}-${idx}`}\n type={type}\n results={results}\n id={field.id}\n label={field.name && field.name[defaultLanguage]}\n useDefaultTheme={useDefaultTheme}\n setValue={setValue}\n onValidateField={onValidateField}\n formId={formId}\n />\n );\n }\n case 'date': {\n return (\n <SingleDate\n key={`${field.id}-${idx}`}\n type={field.type}\n id={field.id}\n label={field.name && field.name[defaultLanguage]}\n validations={field.validations}\n formId={formId}\n setValue={setValue}\n useDefaultTheme={useDefaultTheme}\n />\n );\n }\n case 'dateRange': {\n return (\n <DateRange\n key={`${field.id}-${idx}`}\n id={field.id}\n label={field.name && field.name[defaultLanguage]}\n validations={field.validations}\n formId={formId}\n setDateRangeValues={setDateRangeValues}\n useDefaultTheme={useDefaultTheme}\n />\n );\n }\n case 'hidden': {\n return (\n <HiddenField\n key={`${field.id}-${idx}`}\n type={field.type}\n id={field.id}\n label={field.name && field.name[defaultLanguage]}\n defaultLanguage={defaultLanguage}\n defaultValue={field.default}\n placeholder={field.editor}\n />\n );\n }\n }\n });\n};\n\nFormComposer.propTypes = {\n fields: PropTypes.oneOfType([PropTypes.array, PropTypes.object]),\n formData: PropTypes.object,\n entries: PropTypes.oneOfType([PropTypes.array, PropTypes.object]),\n formId: PropTypes.string,\n setValue: PropTypes.func,\n onValidateField: PropTypes.func,\n setDateRangeValues: PropTypes.func,\n defaultLanguage: PropTypes.string,\n errors: PropTypes.array,\n useDefaultTheme: PropTypes.bool,\n setCheckboxValue: PropTypes.func,\n};\n\nexport default FormComposer;\n","import React from 'react';\n\nexport const Loader = ({ className, color = '#fff', width = 20, height = 20 }) => {\n return (\n <svg\n className={className}\n width={`${width}px`}\n height={`${height}px`}\n viewBox=\"0 0 100 100\"\n preserveAspectRatio=\"xMidYMid\"\n >\n <circle\n cx=\"50\"\n cy=\"50\"\n fill=\"none\"\n stroke={color}\n strokeWidth=\"10\"\n r=\"35\"\n strokeDasharray=\"164.93361431346415 56.97787143782138\"\n style={{ animationPlayState: 'running', animationDelay: '0s' }}\n transform=\"rotate(311.547 50 50)\"\n >\n <animateTransform\n attributeName=\"transform\"\n type=\"rotate\"\n repeatCount=\"indefinite\"\n dur=\"1s\"\n values=\"0 50 50;360 50 50\"\n keyTimes=\"0;1\"\n style={{ animationPlayState: 'running', animationDelay: '0s' }}\n />\n </circle>\n </svg>\n );\n};\n","import styled, { css } from 'styled-components';\n\nexport default styled.button`\n ${({ theme, useDefaultTheme }) => {\n return css`\n ${useDefaultTheme &&\n css`\n display: inline-flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n margin: 16px 0 0 0;\n padding: 8px 16px;\n border-radius: 3px;\n border: 1px solid ${theme.colors.border};\n font-family: inherit;\n transition: opacity 200ms ease;\n &:disabled {\n opacity: 0.7;\n cursor: not-allowed;\n border-color: ${theme.colors.light_grey_light};\n background: ${theme.colors.light_grey_light};\n color: ${theme.colors.light_grey_dark};\n svg {\n margin-left: 4px;\n circle {\n stroke: ${theme.colors.light_grey_dark};\n }\n }\n }\n &:hover {\n opacity: 0.7;\n }\n `}\n `;\n }};\n`;\n","\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport ButtonStyled from './button.styled';\nimport { Loader } from 'zengenti-forms-package/components/loader';\n\nexport const Button = ({\n className,\n type = 'button',\n text,\n action,\n loading,\n useDefaultTheme,\n}) => {\n return (\n <ButtonStyled\n className={`${className ? className : ''} btnSubmit`}\n type={type}\n onClick={() => action()}\n disabled={loading}\n useDefaultTheme={useDefaultTheme}\n >\n {text}\n {loading && <Loader height={18} width={18} />}\n </ButtonStyled>\n );\n};\n\nButton.propTypes = {\n className: PropTypes.string,\n type: PropTypes.string,\n text: PropTypes.string,\n action: PropTypes.func,\n loading: PropTypes.bool,\n useDefaultTheme: PropTypes.bool,\n};\n\nexport default Button;\n","import styled, { css } from 'styled-components';\n\nexport default styled.div`\n ${({ theme }) => {\n return css`\n background: #F1F6FD;\n box-shadow: inset 4px 0 0 ${theme.colors.red_darker};\n border-radius: 0 8px 8px 0;\n padding: 16px 24px;\n margin-top: 8px;\n span {\n font-weight: 400; \n font-size: 14px;\n line-height: 24px;\n }\n `;\n }};\n`;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport CalloutStyled from './callout.styled';\n\nexport const Callout = ({ className, text }) => {\n return (\n <CalloutStyled className={className}>\n <span>{text}</span>\n </CalloutStyled>\n )\n}\n\nCallout.propTypes = {\n className: PropTypes.string,\n text: PropTypes.string,\n};\n","import React, { useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { useSelector, useDispatch } from 'react-redux';\nimport { ThemeProvider } from 'zengenti-forms-package/theme/themeContext';\nimport { defaultTheme } from 'zengenti-forms-package/theme/form';\nimport {\n makeSelectFormStatus,\n makeSelectPagedFields,\n makeSelectPagingInfo,\n makeSelectDefaultLang,\n makeSelectFormSettings,\n makeSelectFormEntries,\n makeSelectFormPostData,\n makeSelectFormFieldErrors,\n makeSelectFormValidationSent,\n} from 'zengenti-forms-package/redux/selectors';\nimport { \n setCheckboxValue,\n setDateRangeValues,\n setFormId,\n setValue,\n onSubmit,\n doTogglePageBack,\n doTogglePageForward,\n onValidateField\n} from 'zengenti-forms-package/redux/actions';\nimport FormStyled from './form.styled';\nimport FormComposer from '../composer/formComposer';\nimport { Loader } from 'zengenti-forms-package/components/loader';\nimport { Button } from 'zengenti-forms-package/components/button';\nimport { Callout } from 'zengenti-forms-package/components/callout';\n\n\nconst Form = ({\n className,\n formId,\n useDefaultTheme = true,\n onCustomSubmit,\n}) => {\n const dispatch = useDispatch();\n\n const _setFormId = (formId) => dispatch(setFormId(formId));\n const _setValue = (formId, id, value) => dispatch(setValue(formId, id, value));\n const _setCheckboxValue = (formId, id, value, isChecked) => dispatch(setCheckboxValue(formId, id, value, isChecked));\n const _setDateRangeValues = (formId, id, dateType, value) => dispatch(setDateRangeValues(formId, id, dateType, value));\n const _onValidateField = (formId, id, value) => dispatch(onValidateField(formId, id, value));\n const _doTogglePageForward = (formId, pageIndex) => dispatch(doTogglePageForward(formId, pageIndex));\n const _doTogglePageBack = (formId, pageIndex) => dispatch(doTogglePageBack(formId, pageIndex)); \n const _onSubmit = formId => dispatch(onSubmit(formId));\n\n useEffect(() => {\n if (formId) _setFormId(formId)\n }, [formId]); \n\n const selectFormFields = makeSelectPagedFields(formId);\n const selectFormStatus = makeSelectFormStatus(formId);\n const selectPagingInfo = makeSelectPagingInfo(formId);\n const selectDefaultLang = makeSelectDefaultLang(formId);\n const selectFormSettings = makeSelectFormSettings(formId);\n const selectFormFieldErrors = makeSelectFormFieldErrors(formId)\n const selectFormEntries = makeSelectFormEntries(formId);\n const selectFormPostData = makeSelectFormPostData(formId);\n const selectFormValidationSent = makeSelectFormValidationSent(formId);\n\n const status = useSelector(selectFormStatus);\n const fields = useSelector(selectFormFields);\n const pagingInfo = useSelector(selectPagingInfo);\n const defaultLanguage = useSelector(selectDefaultLang);\n const settings = useSelector(selectFormSettings);\n const errors = useSelector(selectFormFieldErrors);\n const entries = useSelector(selectFormEntries);\n const formData = useSelector(selectFormPostData);\n const validate = useSelector(selectFormValidationSent);\n\n\n if (pagingInfo && pagingInfo.pageCount > 1) {\n const isLastPage = pagingInfo.pageCount == pagingInfo.pageIndex + 1;\n return (\n <ThemeProvider theme={defaultTheme}>\n <FormStyled\n className={className}\n id={formId}\n useDefaultTheme={useDefaultTheme}\n >\n {!status?.hasSuccess && !status?.isLoading && (\n <>\n {pagingInfo.pageIndex > 0 && (\n <Button\n type=\"button\"\n text=\"Go Back\"\n action={() =>\n _doTogglePageBack(formId, pagingInfo.pageIndex - 1)\n }\n useDefaultTheme={useDefaultTheme}\n />\n )}\n <FormComposer\n fields={fields}\n formData={formData}\n formId={formId}\n setValue={_setValue}\n onValidateField={_onValidateField}\n defaultLanguage={defaultLanguage}\n errors={errors}\n pagingInfo={pagingInfo}\n useDefaultTheme={useDefaultTheme}\n entries={entries}\n setDateRangeValues={_setDateRangeValues}\n setCheckboxValue={_setCheckboxValue}\n />\n {!isLastPage && (\n <Button\n type=\"button\"\n text=\"Next\"\n action={() =>\n _doTogglePageForward(formId, pagingInfo.pageIndex + 1)\n }\n useDefaultTheme={useDefaultTheme}\n />\n )}\n {isLastPage && (\n <Button\n text={settings?.submitButtonText || \"Submit\"}\n type=\"button\"\n loading={status?.isLoading}\n action={() => {\n _onSubmit(formId);\n if (onCustomSubmit) onCustomSubmit();\n }}\n useDefaultTheme={useDefaultTheme}\n />\n )}\n </>\n )}\n {status?.isLoading && !status?.hasSuccess && <Loader className=\"loading\" height={24} width={24} color=\"#333\" />}\n {status?.hasSuccess && status?.messages.success && (\n <p className=\"success-message\">{status.messages.success}</p>\n )}\n {errors?.length >= 1 && validate && (\n <div className=\"form__errors\" role=\"alert\">\n {errors?.map(({ message }, i) => {\n return <Callout className='form__error' text={message} key={i} />\n })}\n </div>\n )}\n </FormStyled>\n </ThemeProvider>\n )\n } else {\n return (\n <ThemeProvider theme={defaultTheme}>\n <FormStyled\n className={className}\n id={formId}\n useDefaultTheme={useDefaultTheme}\n >\n {!status?.hasSuccess && !status?.isLoading && (\n <>\n <FormComposer\n fields={fields}\n formId={formId}\n setValue={_setValue}\n setDateRangeValues={_setDateRangeValues}\n onValidateField={_onValidateField}\n defaultLanguage={defaultLanguage}\n errors={errors}\n useDefaultTheme={useDefaultTheme}\n entries={entries}\n setCheckboxValue={_setCheckboxValue}\n />\n <Button\n loading={status?.isSubmitting}\n text={settings?.submitButtonText || \"Submit\"}\n type=\"button\"\n action={() => {\n _onSubmit(formId);\n if (onCustomSubmit) onCustomSubmit();\n }}\n useDefaultTheme={useDefaultTheme}\n />\n </>\n )}\n {status?.isLoading && !status?.hasSuccess && <Loader className=\"loading\" height={24} width={24} color=\"#333\" />}\n {status?.hasSuccess && status?.messages.success && (\n <p className=\"success-message\">{status.messages.success}</p>\n )}\n {errors?.length >= 1 && validate && (\n <div className=\"form__errors\" role=\"alert\">\n {errors?.map(({ message }, i) => {\n return <Callout className='form__error' text={message} key={i} />\n })}\n </div>\n )} \n </FormStyled>\n </ThemeProvider>\n );\n }\n};\n\nForm.propTypes = {\n className: PropTypes.string,\n formId: PropTypes.string,\n useDefaultTheme: PropTypes.bool,\n onCustomSubmit: PropTypes.func,\n};\n\nexport default Form;\n"],"names":["ACTION_PREFIX","SET_FORM_DATA","SET_FORM_ID","SET_CURRENT_PAGE","PAGE_BACK","PAGE_FORWARD","SET_FIELD_VALUE","SET_DEFAULT_FIELD_VALUE","SUBMIT_FORM_FOR_VALIDATION","SUBMIT_FORM","SUBMIT_FORM_SUCCESS","SUBMIT_FORM_ERROR","SET_SUBMITTING_FORM","SET_ERROR","VALIDATE_FIELD","SET_FIELD_ERROR","SET_DATE_RANGE_VALUES","SET_FORM_ENTRIES","SET_SUCCESS_MESSAGE","SET_CHECKBOX_VALUE","initialSettings","recaptcha","siteKey","initialStatus","isLoading","isSubmitting","hasSuccess","hasError","messages","success","validation","sent","initialPagingInfo","pageIndex","pageCount","currentPageId","initialFormData","formId","data","fields","entries","fieldErrors","groups","defaultLanguage","pagingInfo","status","settings","initialState","produce","state","action","type","pageId","id","value","isChecked","values","filter","v","dateType","message","entryObject","map","entry","selectForms","forms","makeSelectPagedFields","createSelector","_forms$formId","_forms$formId2","length","f","groupId","makeSelectFormStatus","_forms$formId3","makeSelectPagingInfo","_forms$formId4","makeSelectFormSettings","_forms$formId5","makeSelectFormFieldErrors","_forms$formId6","makeSelectFormEntries","_forms$formId7","makeSelectFormPostData","_forms$formId8","makeSelectIsLoading","_forms$formId9","makeSelectIsSubmitting","_forms$formId10","makeSelectHasSuccess","_forms$formId11","makeSelectHasError","_forms$formId12","makeSelectFormFields","_forms$formId13","makeSelectDefaultLang","_forms$formId14","makeSelectFormSuccessMessage","_forms$formId15","makeSelectFormValidationSent","_forms$formId16","makeSelectFormGroup","_forms$formId17","selectors","URI","getFormSchema","options","method","headers","getUrl","schema","request","getEntries","formObj","Accept","body","JSON","stringify","entriesUrl","postForm","submitted","url","fetch","then","response","json","result","catch","error","console","log","domains","doA11yValidation","field","formValidationSent","doValidateField","validations","fieldId","_field$validations","_field$validations$re","isRequired","required","minLength","maxLength","hasRegex","regex","pattern","integer","dataType","decimal","isBusinessEmail","_isRequired$message","_field$name","errorMessage","name","_r$message","r","msg","isValidRegex","isBusinessEmailValid","isInteger","isDecimal","regexPattern","RegExp","test","domain","split","pop","includes","doCreateMessage","currentLength","minLengthVal","minText","toString","maxLengthVal","maxText","rangeText","getFieldType","_field$editor","_field$editor$propert","editor","properties","readOnly","allowedValues","dataFormat","sagas","takeEvery","onFormSuccess","doValidateForm","onSubmitForm","doFetchForm","takeLatest","onValidateField","doTogglePage","getEntryPickerData","setDefaultValueFields","onValidateAllFields","put","call","onValidateSingleField","validateGroupfields","select","selectPostData","postData","selectFormFields","groupFields","groupid","newErrors","forEach","val","err","push","selectFormFieldErrors","errors","fieldData","find","selectFormGroups","formGroups","_schema$groups","group","_schema$groups2","_submitButtonText$def","submitButtonText","default","redirect","window","location","href","m","canSubmit","_formResObj$sys","rawData","contentType","formPost","formResObj","sys","entryId","selectRouteEntryEntryId","fieldObj","entriesToGet","entriesList","all","entriesObj","allowedContentTypes","contentTypes","versionStatus","language","pageSize","payload","onSubmit","setFormId","setValue","setCheckboxValue","setDateRangeValues","doTogglePageForward","doTogglePageBack","actions","ThemeContext","createContext","ThemeProvider","children","theme","React","createElement","Provider","BaseThemeProvider","propTypes","PropTypes","oneOfType","arrayOf","node","object","colors","white","black","dark_grey_lighter","dark_grey_lightest","dark_grey_light","dark_grey_dark","dark_grey_darker","dark_grey_darkest","light_grey_lightest","light_grey_lighter","light_grey_light","light_grey_dark","light_grey_darker","light_grey_darkest","green_lightest","green_lighter","green_light","green_dark","green_darker","green_darkest","red_lightest","red_lighter","red_light","red_dark","red_darker","red_darkest","defaultTheme","FormStyled","styled","form","withConfig","displayName","componentId","useDefaultTheme","css","Label","className","label","isHidden","htmlFor","string","bool","CharacterLimitStyled","div","neutrals","empress_gray","CharacterLimit","valueAsString","hasMaxLength","hasMinLength","hasInBetween","TextfieldStyled","Textfield","defaultValue","placeholder","hasCharLimit","setCharLimit","useState","placeholderText","defaultValueText","a11yInvalid","setA11yInvalid","_","setTextfieldValue","selectFormValidationSent","useSelector","useEffect","style","position","onChange","e","target","onBlur","onFocus","xmlns","focusable","role","width","height","fill","d","any","func","array","Textarea","showCharLimit","setShowCharLimit","setTextareaValue","HiddenField","Dropdown","ddValues","idx","key","CheckboxStyled","Checkbox","isDefaultChecked","setIsChecked","cbValues","_handleChange","checked","RadioButtonStyled","RadioButton","formatDate","date","format","dateObj","Date","dateString","dateArr","year","month","day","dayNameInt","getDay","timeArr","hour","minute","YEAR","MONTH","DAY","HOUR24","HOUR12","MINUTE","TF","formattedDate","replace","slice","monthsLong","parseInt","monthsShort","daysLong","daysShort","parseHour","parseTF","SingleDate","onlyPassedDates","pastDateTime","todaysDate","toISOString","isoDate","max","DateRangeStyled","DateRange","toDate","setToDate","fromDate","setFromDate","_handleDateChange","_updateDateProps","newDate","min","EntryPickerStyled","EntryPicker","results","valArr","valItem","res","entryTitle","FormComposer","formData","DropDown","items","Loader","color","viewBox","preserveAspectRatio","cx","cy","stroke","strokeWidth","strokeDasharray","animationPlayState","animationDelay","transform","attributeName","repeatCount","dur","keyTimes","button","border","Button","text","loading","ButtonStyled","onClick","disabled","Callout","CalloutStyled","Form","onCustomSubmit","dispatch","useDispatch","_setFormId","_setValue","_setCheckboxValue","_setDateRangeValues","_onValidateField","_doTogglePageForward","_doTogglePageBack","_onSubmit","selectFormStatus","selectPagingInfo","selectDefaultLang","selectFormSettings","selectFormEntries","selectFormPostData","validate","isLastPage","Fragment","i"],"mappings":"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"}