%PDF- %PDF-
Direktori : /home/opti/public_html/ncf/static/js/ |
Current File : /home/opti/public_html/ncf/static/js/58.74e21ccd.chunk.js.map |
{"version":3,"sources":["app/main/get-involved/components/CorporateForm.js","app/main/get-involved/Corporate-membership.js"],"names":["CorporateForm","props","useState","countries","setCountries","country","setCountry","states","setStates","thestate","settheState","cities","setCities","city","setCity","membershipType","member","Number","price","payment","setPayment","userEmail","setUserEmail","useEffect","fetch","SERVER_URL","then","res","json","status","data","console","log","paystack_p_key","paystack_id","member_email","useForm","register","handleSubmit","formState","errors","isDirty","isValid","message","map","gateway","public_key","id","config","reference","Date","getTime","toString","email","amount","publicKey","initializePayment","usePaystackPayment","onSubmit","type","company_name","full_name","ownership_type","country_id","state_id","city_id","office_address","head_office","company_email","email_address","company_tel","phone_number","company_strength","staff_strength","company_director","manager_director","date_started","regDate","contact_name","contact_person","contact_email","contact_person_email","contact_tel","contact_person_telephone","contact_designation","contact_person_designation","undefined","paymentdata","payment_status","transaction_reference","payment_gateway_id","membershipData","corporatemembershipAction","className","name","required","placeholder","autoComplete","defaultValue","onChange","e","countryID","target","value","stateID","thestates","state","contact_person_gender","htmlFor","fontSize","color","CorporateMembership","queryString","window","location","search","urlParams","URLSearchParams","get","error","localStorage","getItem","success","setTimeout","removeItem","page","SliderBar","UncontrolledAlert"],"mappings":"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","file":"static/js/58.74e21ccd.chunk.js","sourcesContent":["import React, { useState, useEffect } from 'react';\r\nimport { useForm } from 'react-hook-form';\r\nimport clsx from 'clsx';\r\nimport { HiOutlineChevronDown, HiLockClosed } from 'react-icons/hi';\r\n\r\nimport {SERVER_URL} from '../../../config/server';\r\nimport {corporatemembershipAction} from '../../../actions/membership'\r\nimport { usePaystackPayment } from 'react-paystack';\r\n\r\nfunction CorporateForm(props) {\r\n // console.log(props.price)\r\n const [countries, setCountries] = useState([])\r\n const [country, setCountry] = useState('')\r\n const [states, setStates] = useState([])\r\n const [thestate, settheState] = useState([])\r\n const [cities, setCities] = useState([])\r\n const [city, setCity] = useState([])\r\n const [member, setMember] = useState(props.membershipType);\r\n const [price, setPrice] = useState(Number(props.price * 100));\r\n const [payment, setPayment] = useState();\r\n const [userEmail, setUserEmail] = useState();\r\n useEffect(() => {\r\n const fetchCountry =() =>{\r\n fetch(`${SERVER_URL}/location/country`)\r\n .then(res => res.json())\r\n .then(json => {\r\n // console.log(json.message, 'json')\r\n if(json.status === 200){\r\n setCountries(json.data);\r\n }else{\r\n console.log(\"Oops couldn't fetch data\");\r\n }\r\n });\r\n \r\n }\r\n \r\n fetchCountry();\r\n }, []);\r\n\r\n const handleCountry = (e) =>{\r\n let countryID = e.target.value;\r\n\r\n const fetchState =() =>{\r\n fetch(`${SERVER_URL}/location/state/${countryID}`)\r\n .then(res => res.json())\r\n .then(json => {\r\n console.log(json.message, 'json')\r\n if(json.status === 200){\r\n setStates(json.data);\r\n }else{\r\n console.log(\"Oops couldn't fetch data\");\r\n }\r\n });\r\n \r\n }\r\n\r\n fetchState();\r\n \r\n setCountry(e.target.value);\r\n }\r\n\r\n const handleState = (e) =>{\r\n let stateID = e.target.value;\r\n\r\n const fetchCity =() =>{\r\n fetch(`${SERVER_URL}/location/city/${stateID}`)\r\n .then(res => res.json())\r\n .then(json => {\r\n console.log(json.message, 'json')\r\n if(json.status === 200){\r\n setCities(json.data);\r\n }else{\r\n console.log(\"Oops couldn't fetch data\");\r\n }\r\n });\r\n \r\n }\r\n\r\n fetchCity();\r\n settheState(e.target.value)\r\n }\r\n\r\n const handleCity = (e) =>{\r\n setCity(e.target.value)\r\n }\r\n\r\n\r\n \r\n const {\r\n register,\r\n handleSubmit,\r\n formState: { errors, isDirty, isValid },\r\n } = useForm();\r\n\r\n // Fetching Paystack Details \r\n useEffect(() => {\r\n const fetchgateway =() =>{\r\n fetch(`${SERVER_URL}/gateway/payment`)\r\n .then(res => res.json())\r\n .then(json => {\r\n if(json.status === 200){\r\n setPayment(json.data);\r\n }else{\r\n console.log(json.message);\r\n }\r\n }); \r\n }\r\n\r\n fetchgateway()\r\n }, [])\r\n \r\n\r\n // Setting the paystack Key \r\n let paystack_p_key\r\n let paystack_id\r\n if(payment){\r\n payment.map(gateway =>{\r\n paystack_p_key = gateway.public_key\r\n paystack_id = gateway.id\r\n })\r\n }\r\n\r\n\r\n\r\n // Getting the users email \r\n\r\n const setEmail = (e) =>{\r\n console.log();\r\n setUserEmail(e.target.value);\r\n }\r\n\r\n\r\n let member_email\r\n if(userEmail){\r\n member_email = userEmail\r\n }\r\n\r\n // Paystack configouration \r\n const config = {\r\n reference: (new Date()).getTime().toString(),\r\n email: member_email,\r\n amount: price,\r\n publicKey: paystack_p_key,\r\n };\r\n\r\n\r\n //Initialize Paystack with config\r\n const initializePayment = usePaystackPayment(config);\r\n\r\n\r\n const onSubmit = (data) => {\r\n const type = member;\r\n const company_name = data.full_name;\r\n const ownership_type = data.ownership_type;\r\n const country_id = country;\r\n const state_id = thestate;\r\n const city_id = city;\r\n const office_address = data.head_office;\r\n const company_email = data.email_address;\r\n const company_tel = data.phone_number;\r\n const company_strength = data.staff_strength;\r\n const company_director = data.manager_director;\r\n const date_started = data.regDate;\r\n const contact_name = data.contact_person;\r\n const contact_email = data.contact_person_email;\r\n const contact_tel = data.contact_person_telephone;\r\n const contact_designation = data.contact_person_designation\r\n\r\n \r\n\r\n // Run on successful Payment\r\n const onSuccess = (paymentdata) => {\r\n const transaction_reference = paymentdata.reference;\r\n const payment_gateway_id = paystack_id;\r\n let payment_status \r\n\r\n if(paymentdata.status === 'success'){\r\n payment_status = 1\r\n }else{\r\n payment_status = 2\r\n }\r\n\r\n const amount = price;\r\n\r\n const membershipData = {\r\n type,\r\n company_name,\r\n ownership_type,\r\n country_id,\r\n state_id,\r\n city_id,\r\n office_address,\r\n company_email,\r\n company_tel,\r\n company_strength,\r\n company_director,\r\n date_started,\r\n contact_name,\r\n contact_email,\r\n contact_tel,\r\n contact_designation,payment_gateway_id,\r\n transaction_reference,\r\n payment_status,\r\n amount\r\n } \r\n corporatemembershipAction(membershipData)\r\n };\r\n \r\n const onClose = () => {\r\n console.log('closed')\r\n }\r\n\r\n if(userEmail !== undefined && paystack_p_key !== undefined){\r\n initializePayment(onSuccess, onClose)\r\n }else{\r\n console.log('none')\r\n }\r\n\r\n };\r\n \r\n\r\n \r\n\r\n return (\r\n <form onSubmit={handleSubmit(onSubmit)} className='mb-8 w-full'>\r\n <div className='overflow-hidden sm:rounded-md'>\r\n <div className='px-4 py-5 sm:p-6'>\r\n \r\n <div className='grid grid-cols-6 gap-y-3 gap-x-6 mb-8'>\r\n \r\n <div className='col-span-6 sm:col-span-6'>\r\n <h2 className='text-lg font-bold text-black uppercase mb-4'>\r\n General Information\r\n </h2>\r\n </div>\r\n <div className='col-span-6 sm:col-span-3'>\r\n <input\r\n type='text'\r\n name='company_name'\r\n id='company-name'\r\n {...register('full_name', { required: true })}\r\n placeholder='Company name'\r\n autoComplete='company-name'\r\n className='py-2 px-3 focus:outline-none focus:ring-2 focus:ring-green focus:ring-opacity-50 block w-full shadow-sm sm:text-sm border border-solid border-gray-300 rounded-sm'\r\n />\r\n {errors.full_name && (\r\n <span className='text-xs text-red-500'>\r\n This field is required\r\n </span>\r\n )}\r\n </div>\r\n\r\n <div className='col-span-6 sm:col-span-3'>\r\n <input\r\n type='text'\r\n {...register('ownership_type', { required: true })}\r\n placeholder='Type of ownership'\r\n id='ownership-type'\r\n autoComplete='ownership-type'\r\n className='py-2 px-3 focus:outline-none focus:ring-2 focus:ring-green focus:ring-opacity-50 block w-full shadow-sm sm:text-sm border border-solid border-gray-300 rounded-sm'\r\n />\r\n {errors.company_name && (\r\n <span className='text-xs text-red-500'>\r\n This field is required\r\n </span>\r\n )}\r\n </div>\r\n\r\n <div className='col-span-6 sm:col-span-3'>\r\n <input\r\n type='date'\r\n {...register('regDate', { required: true })}\r\n placeholder='Company Registered Date'\r\n id='reg-date'\r\n autoComplete='reg-date'\r\n className='py-2 px-3 focus:outline-none focus:ring-2 focus:ring-green focus:ring-opacity-50 block w-full shadow-sm sm:text-sm border border-solid border-gray-300 rounded-sm'\r\n />\r\n {errors.regDate && (\r\n <span className='text-xs text-red-500'>\r\n This field is required\r\n </span>\r\n )}\r\n </div>\r\n\r\n <div className='col-span-6 sm:col-span-3'>\r\n <input\r\n type='text'\r\n {...register('head_office', { required: true })}\r\n placeholder='(Head) Office Address'\r\n id='head-office'\r\n autoComplete='head-office'\r\n className='py-2 px-3 focus:outline-none focus:ring-2 focus:ring-green focus:ring-opacity-50 block w-full shadow-sm sm:text-sm border border-solid border-gray-300 rounded-sm'\r\n />\r\n {errors.head_office && (\r\n <span className='text-xs text-red-500'>\r\n This field is required\r\n </span>\r\n )}\r\n </div>\r\n\r\n\r\n <div className='col-span-6 sm:col-span-3'>\r\n <div className='w-full block relative'>\r\n <select\r\n \r\n id='country'\r\n {...register('country', { required: true })}\r\n placeholder='Country'\r\n autoComplete='country'\r\n defaultValue={countries[0]}\r\n className='block appearance-none w-full py-2 px-2 pr-8 border border-gray-300 bg-white leading-tight rounded-sm shadow-sm focus:outline-none focus:ring-2 focus:ring-green focus:ring-opacity-50 sm:text-sm'\r\n onChange={handleCountry}\r\n >\r\n <option>Country</option>\r\n {countries.map((country) =>(\r\n <option key={country.id} value={country.id}>{country.name}</option>\r\n ))}\r\n </select>\r\n <div className='pointer-events-none absolute inset-y-0 right-0 flex items-center px-2 text-gray-700'>\r\n <HiOutlineChevronDown />\r\n </div>\r\n </div>\r\n {errors.country && (\r\n <span className='text-xs text-red-500'>\r\n This field is required\r\n </span>\r\n )}\r\n </div>\r\n\r\n <div className='col-span-6 sm:col-span-3'>\r\n <input\r\n type='text'\r\n {...register('phone_number', { required: true })}\r\n placeholder='Phone number'\r\n id='phone_number'\r\n className='py-2 px-3 focus:outline-none focus:ring-2 focus:ring-green focus:ring-opacity-50 block w-full shadow-sm sm:text-sm border border-solid border-gray-300 rounded-sm'\r\n />\r\n {errors.phone_number && (\r\n <span className='text-xs text-red-500'>\r\n This field is required\r\n </span>\r\n )}\r\n </div>\r\n\r\n <div className='col-span-6 sm:col-span-3'>\r\n <div className='relative'>\r\n <select\r\n id='state'\r\n {...register('state', { required: true })}\r\n placeholder='State'\r\n autoComplete='state'\r\n className='block appearance-none w-full py-2 px-2 pr-8 border border-gray-300 bg-white rounded-sm shadow-sm focus:outline-none focus:ring-2 focus:ring-green focus:ring-opacity-50 sm:text-sm'\r\n defaultValue={states[0]}\r\n onChange={handleState}\r\n >\r\n \r\n <option>State</option>\r\n {states.map((thestates) =>(\r\n <option key={thestates.id} value={thestates.id}>{thestates.name}</option>\r\n ))}\r\n </select>\r\n <div className='pointer-events-none absolute inset-y-0 right-0 flex items-center px-2 text-gray-700'>\r\n <HiOutlineChevronDown />\r\n </div>\r\n </div>\r\n {errors.state && (\r\n <span className='text-xs text-red-500'>\r\n This field is required\r\n </span>\r\n )}\r\n </div>\r\n\r\n <div className='col-span-6 sm:col-span-3'>\r\n <input\r\n type='text'\r\n {...register('email_address', { required: true })}\r\n placeholder='Email address'\r\n id='email-address'\r\n autoComplete='email'\r\n onChange={setEmail}\r\n className='py-2 px-3 focus:outline-none focus:ring-2 focus:ring-green focus:ring-opacity-50 block w-full shadow-sm sm:text-sm border border-solid border-gray-300 rounded-sm'\r\n />\r\n {errors.email_address && (\r\n <span className='text-xs text-red-500'>\r\n This field is required\r\n </span>\r\n )}\r\n </div>\r\n\r\n <div className='col-span-6 sm:col-span-3'>\r\n <div className='relative'>\r\n <select\r\n id='city'\r\n {...register('city', { required: true })}\r\n placeholder='City'\r\n autoComplete='city'\r\n className='block appearance-none w-full py-2 px-2 pr-8 border border-gray-300 bg-white rounded-sm shadow-sm focus:outline-none focus:ring-2 focus:ring-green focus:ring-opacity-50 sm:text-sm'\r\n defaultValue={cities[0]}\r\n onChange={handleCity}\r\n >\r\n \r\n <option>City</option>\r\n {cities.map((city) =>(\r\n <option key={city.id} value={city.id}>{city.name}</option>\r\n ))}\r\n </select>\r\n <div className='pointer-events-none absolute inset-y-0 right-0 flex items-center px-2 text-gray-700'>\r\n <HiOutlineChevronDown />\r\n </div>\r\n </div>\r\n {errors.state && (\r\n <span className='text-xs text-red-500'>\r\n This field is required\r\n </span>\r\n )}\r\n </div>\r\n\r\n\r\n \r\n\r\n <div className='col-span-6 sm:col-span-3'>\r\n <input\r\n type='text'\r\n {...register('manager_director', {\r\n required: true,\r\n })}\r\n placeholder='Manager director'\r\n id='manager-director'\r\n autoComplete='manager-director'\r\n className='py-2 px-3 focus:outline-none focus:ring-2 focus:ring-green focus:ring-opacity-50 block w-full shadow-sm sm:text-sm border border-solid border-gray-300 rounded-sm'\r\n />\r\n {errors.manager_director && (\r\n <span className='text-xs text-red-500'>\r\n This field is required\r\n </span>\r\n )}\r\n </div>\r\n\r\n <div className='col-span-6 sm:col-span-3'>\r\n <input\r\n type='text'\r\n {...register('staff_strength', { required: true })}\r\n placeholder='Staff Strength'\r\n id='staff-strength'\r\n autoComplete='staff-strength'\r\n className='py-2 px-3 focus:outline-none focus:ring-2 focus:ring-green focus:ring-opacity-50 block w-full shadow-sm sm:text-sm border border-solid border-gray-300 rounded-sm'\r\n />\r\n {errors.staff_strength && (\r\n <span className='text-xs text-red-500'>\r\n This field is required\r\n </span>\r\n )}\r\n </div>\r\n </div>\r\n\r\n {/* Contact Form */}\r\n <div className='grid grid-cols-6 gap-y-3 gap-x-6'>\r\n <div className='col-span-6 sm:col-span-6'>\r\n <div className='mb-4'>\r\n <h2 className='text-lg font-bold text-black uppercase'>\r\n Contact Information\r\n </h2>\r\n <span className='text-sm text-gray-600'>\r\n This section gathers information about the contact persons for\r\n your organization. All correspondences between the NCF and\r\n your organization will be addressed to the persons specified\r\n below.\r\n </span>\r\n </div>\r\n </div>\r\n <div className='col-span-6 sm:col-span-3'>\r\n <input\r\n type='text'\r\n name='contact_person'\r\n id='contact-person-name'\r\n {...register('contact_person', { required: true })}\r\n placeholder=\"Contact Person's Name\"\r\n autoComplete='contact-person-name'\r\n className='py-2 px-3 focus:outline-none focus:ring-2 focus:ring-green focus:ring-opacity-50 block w-full shadow-sm sm:text-sm border border-solid border-gray-300 rounded-sm'\r\n />\r\n {errors.contact_person && (\r\n <span className='text-xs text-red-500'>\r\n This field is required\r\n </span>\r\n )}\r\n </div>\r\n\r\n <div className='col-span-6 sm:col-span-3'>\r\n <input\r\n type='text'\r\n {...register('contact_person_email', {\r\n required: true,\r\n })}\r\n placeholder=\"Contact Person's Email\"\r\n id='contact-person-email'\r\n autoComplete='contact-person-email'\r\n className='py-2 px-3 focus:outline-none focus:ring-2 focus:ring-green focus:ring-opacity-50 block w-full shadow-sm sm:text-sm border border-solid border-gray-300 rounded-sm'\r\n />\r\n {errors.contact_person_email && (\r\n <span className='text-xs text-red-500'>\r\n This field is required\r\n </span>\r\n )}\r\n </div>\r\n\r\n <div className='col-span-6 sm:col-span-3'>\r\n <input\r\n type='text'\r\n {...register('contact_person_designation', {\r\n required: true,\r\n })}\r\n placeholder=\"Contact Person's Designation\"\r\n id='contact-person-designation'\r\n autoComplete='contact-person-designation'\r\n className='py-2 px-3 focus:outline-none focus:ring-2 focus:ring-green focus:ring-opacity-50 block w-full shadow-sm sm:text-sm border border-solid border-gray-300 rounded-sm'\r\n />\r\n {errors.contact_person_designation && (\r\n <span className='text-xs text-red-500'>\r\n This field is required\r\n </span>\r\n )}\r\n </div>\r\n\r\n <div className='col-span-6 sm:col-span-3'>\r\n <input\r\n type='text'\r\n {...register('contact_person_telephone', {\r\n required: true,\r\n })}\r\n placeholder=\"Contact Person's Telephone\"\r\n id='contact-person-telephone'\r\n autoComplete='contact-person-telephone'\r\n className='py-2 px-3 focus:outline-none focus:ring-2 focus:ring-green focus:ring-opacity-50 block w-full shadow-sm sm:text-sm border border-solid border-gray-300 rounded-sm'\r\n />\r\n {errors.contact_person_telephone && (\r\n <span className='text-xs text-red-500'>\r\n This field is required\r\n </span>\r\n )}\r\n </div>\r\n\r\n <div className='col-span-6 sm:col-span-3'>\r\n <div className='relative'>\r\n <select\r\n id='contact-person-gender'\r\n {...register('contact_person_gender', {\r\n required: true,\r\n })}\r\n placeholder=\"Contact Person's Gender\"\r\n autoComplete='contact-person-gender'\r\n className='block appearance-none w-full py-2 px-2 pr-8 border border-gray-300 bg-white rounded-sm shadow-sm focus:outline-none focus:ring-2 focus:ring-green focus:ring-opacity-50 sm:text-sm'\r\n >\r\n <option value='Lagos'>Male</option>\r\n <option value='Abuja'>Female</option>\r\n </select>\r\n <div className='pointer-events-none absolute inset-y-0 right-0 flex items-center px-2 text-gray-700'>\r\n <HiOutlineChevronDown />\r\n </div>\r\n </div>\r\n {errors.contact_person_gender && (\r\n <span className='text-xs text-red-500'>\r\n This field is required\r\n </span>\r\n )}\r\n </div>\r\n\r\n <div className='col-span-4'>\r\n <fieldset>\r\n <div className='mt-4 space-y-4'>\r\n <div className='flex items-center'>\r\n <div className='flex items-center h-5'>\r\n <input\r\n id='new-account'\r\n {...register('new_account')}\r\n type='checkbox'\r\n className='focus:ring-indigo-500 h-4 w-4 text-indigo-600 border-gray-300 rounded'\r\n />\r\n </div>\r\n <div className='ml-3 text-sm mt-0.5'>\r\n <label\r\n htmlFor='new-account'\r\n className='font-medium text-gray-700'\r\n >\r\n Please confirm that the information provided on this\r\n form is true and accurate.\r\n </label>\r\n </div>\r\n </div>\r\n <div className='flex items-center'>\r\n <div className='flex items-center h-5'>\r\n <HiLockClosed fontSize='large' color='#666' />\r\n </div>\r\n <div className='ml-3 text-sm mt-0.5'>\r\n <label\r\n htmlFor='shipping-address'\r\n className='font-medium text-gray-700'\r\n >\r\n DATA PROTECTION: The personal information provided by\r\n you will be held on our database and will not be shared\r\n with any third party..\r\n </label>\r\n </div>\r\n </div>\r\n </div>\r\n </fieldset>\r\n </div>\r\n </div>\r\n\r\n <div className='flex justify-center space-x-12 px-4 py-3 bg-gray-50 text-right sm:px-6 mt-12'>\r\n <button\r\n type='submit'\r\n className='bg-green hover:bg-green-800 inline-flex justify-center py-2 px-12 shadow-sm text-sm font-mediumrounded-sm text-white focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-green'\r\n \r\n >\r\n Submit\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </form>\r\n );\r\n}\r\n\r\nexport default CorporateForm;\r\n","import React, { useState } from 'react';\r\nimport HomeSlider from './components/slider/Slider';\r\nimport { SocialTabs } from '@nfc';\r\nimport { HiOutlineChevronDown } from 'react-icons/hi';\r\nimport CorporateForm from './components/CorporateForm';\r\nimport IndividualForm from './components/IndividualForm';\r\nimport SliderBar from \"../../layout/components/SliderBar/SliderBar\"\r\nimport {UncontrolledAlert ,Alert} from 'reactstrap'\r\n\r\nfunction CorporateMembership(props) {\r\n const queryString = window.location.search;\r\n const urlParams = new URLSearchParams(queryString);\r\n const membershipType = urlParams.get('type')\r\n const price = urlParams.get('price')\r\n const error = localStorage.getItem('login-error');\r\n const success = localStorage.getItem('login-success');\r\n setTimeout(function() {\r\n localStorage.removeItem('login-error');\r\n }, 15000)\r\n setTimeout(function() {\r\n localStorage.removeItem('login-success');\r\n }, 15000)\r\n\r\n const page = 'membership'\r\n\r\n return (\r\n <div className=\"bg-white\">\r\n <HomeSlider page={page}/>\r\n <div className='w-full md:px-8 pt-16 pb-8'>\r\n <SliderBar/>\r\n <div className='mx-auto md:px-0'>\r\n <div className='text-left mb-6 px-8'>\r\n <h1 className='font-black text-2xl text-green uppercase tracking-tight'>\r\n {membershipType} MEMBERSHIP FORM\r\n </h1>\r\n {error ? \r\n <UncontrolledAlert color=\"danger\">\r\n {error}\r\n </UncontrolledAlert>\r\n \r\n : null }\r\n {success ? \r\n <UncontrolledAlert color=\"success\">\r\n {success}\r\n </UncontrolledAlert>\r\n \r\n : null } \r\n <span className='text-sm text-gray-600'>\r\n Please complete this section with information about your\r\n organization\r\n </span>\r\n </div>\r\n <div className='grid md:grid-cols-12 md:gap-8 gap-y-8 items-start'>\r\n <div className='sm:col-span-12 col-span-12'>\r\n <div>\r\n <CorporateForm membershipType={membershipType} price={price} />\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n );\r\n}\r\n\r\nexport default CorporateMembership;\r\n"],"sourceRoot":""}