{"version":3,"sources":["js/Services/Enums/actionEnum.js","js/Services/API/giftCardAPI.js","js/Services/Store/Actions/_giftActions.js","js/Services/Store/Actions/index.js","js/Services/Store/Actions/_formActions.js","js/Services/Store/Actions/_propertyActions.js","js/Services/Helpers/languages.js","i18n.js","js/Components/Container/Form/1.Header/Header.js","js/Components/Container/Form/2.Main/1.Amount/CardsList/Card/Card.js","js/Services/Enums/currencyEnum.js","js/Components/Container/Form/2.Main/1.Amount/CardsList/CardsList.js","js/Components/Container/Form/2.Main/1.Amount/CustomCard/CustomCard.js","js/Services/Models/Progress.js","js/Elements/SubmitButton.js","js/Components/Container/Form/2.Main/1.Amount/Amount.js","js/Services/Enums/targetEnum.js","js/Services/Data/countries.js","js/Elements/Dropdown.js","js/Components/Container/Form/2.Main/2.Data/FormGift/CompanyForm/CompanyForm.js","js/Components/Container/Form/2.Main/2.Data/FormGift/FormGift.js","js/Components/Container/Form/2.Main/2.Data/Data.js","js/Components/Container/Form/2.Main/Loader.js","js/Services/Store/Reducers/_completePurchase.js","js/Components/Container/Form/2.Main/3.Summary/PaidBody.js","js/Components/Container/Form/2.Main/3.Summary/PendingBody.js","js/Services/Enums/paymentEnum.js","js/Components/Container/Form/2.Main/3.Summary/ErrorBody.js","js/Components/Container/Form/2.Main/3.Summary/Summary.js","js/Components/Container/Form/2.Main/2.Data/CurrentGift/SelectedGift/SelectedGift.js","js/Components/Container/Form/2.Main/2.Data/CurrentGift/CurrentGift.js","js/Components/Container/Form/2.Main/Main.js","js/Components/Container/Form/3.Footer/Footer.js","js/Components/Container/Form/Form.js","js/Components/Container/Error.js","js/Components/Container/Container.js","js/Elements/Modal.js","serviceWorker.js","js/Services/Store/Reducers/_availableGifts.js","js/Services/Store/Reducers/_currentGifts.js","js/Services/Store/Reducers/_currentProperty.js","js/Services/Models/Gift.js","js/Services/Store/Reducers/_formGift.js","js/Services/Store/Reducers/_progress.js","js/Services/Store/Reducers/_propertySettings.js","js/Services/Store/Reducers/_selectedGift.js","js/Services/Helpers/calculator.js","js/Services/Store/Reducers/_totalCost.js","js/Services/Store/Reducers/_paymentData.js","js/Services/Store/Reducers/_loading.js","js/Services/Store/Reducers/index.js","js/Services/Store/Reducers/_giftCardValues.js","js/Services/Logging/Logger.js","index.js","js/App.js","img/check.svg","img/cross.svg"],"names":["actionEnum","axios","create","baseURL","process","previousId","allActions","formActions","setGift","type","value","payload","giftActions","addToCurrentGifts","id","decrementCurrentGift","getGiftcardValues","slug","dispatch","a","giftCardAPI","get","response","data","values","incrementCurrentGift","removeFromSelectedGifts","selectGift","setTotalGift","saveTempPurchase","tempPurchase","post","completePurchase","tempId","propertyActions","getPropertySettings","setCurrentProperty","loading","state","languages","i18n","use","Backend","LanguageDetector","initReactI18next","init","fallbackLng","debug","whitelist","interpolation","escapeValue","Header","countries","registerLocale","require","useTranslation","t","steps","useDispatch","settings","useSelector","propertySettings","progress","options","map","language","selected","key","toUpperCase","url","className","href","propertyName","onChange","e","changeLanguage","target","handleChange","undefined","company","street","number","postal","city","getName","country","dangerouslySetInnerHTML","__html","style","width","backgroundColor","color","step","i","currentStep","Card","props","selectedGift","onClick","document","getElementById","gift","parseInt","cardSelect","currency","currencyEnum","CardsList","giftCardValues","renderList","index","length","CustomCard","placeholder","Progress","this","SubmitButton","click","text","Amount","history","useHistory","useParams","useEffect","card__select","selectedValue","isNaN","push","isActive","Fragment","targetEnum","name","code","Dropdown","useState","filter","setFilter","isOpen","setIsOpen","setOptions","selectedItem","setSelectedItem","list","item","openMenu","menu","getElementsByClassName","classList","contains","search","el","outsideClickListener","event","isVisible","closeMenu","removeClickListener","removeEventListener","addEventListener","hideOnClickOutside","add","remove","elem","offsetWidth","offsetHeight","getClientRects","autoComplete","input","toLowerCase","filtered","option","includes","filterOptions","role","data-value","action","actionName","CompanyForm","listCountries","formGift","defaultValue","companyName","onBlur","companyVAT","companyStreet","companyNumber","companyPostal","companyCity","FormGift","setTarget","invoice","setInvoice","termsAndConditions","setTermsAndConditions","currentProperty","paymentData","changeTarget","content","maxHeight","scrollHeight","changeTargetMail","changeInvoice","overflow","timeout","time","window","getComputedStyle","transitionDuration","charAt","slice","parseFloat","getTransitionTime","setTimeout","asksInvoice","changeTermsAndConditions","acceptTermsAndConditions","validateForm","fields","validForm","requiredFields","getAttribute","isStripe","redirectUrl","location","sessionId","apiKey","stripePromise","loadStripe","redirectToCheckout","then","result","GetPaymentData","customeFirstName","customerName","customerEmail","askAddress","customerStreet","customerNumber","customerPostal","customerCity","maxLength","message","checked","mailtarget","receiverFirstName","receiverName","receiverEmail","backdrop","modal","openTermsAndConditions","currentGifts","selectedGiftCards","k","v","amount","quantity","Data","Loader","class","borderTopColor","PaidBody","completePurchases","src","Check","alt","Email","email","PendingBody","paymentEnum","ErrorBody","Cross","Summary","status","Gift","isLast","icon","CurrentGift","totalCost","listen","closeCustomisation","size","toggleCustomisation","openCustomisation","arrowButton","Main","path","exact","strict","render","to","pathname","replace","Footer","stardekkUrl","Form","head","getElementsByTagName","createElement","innerHTML","trim","appendChild","backgroundImg","background","Error","Container","Modal","conditions","ReactHtmlParser","nl","fr","en","renderConditions","closeTermsAndConditions","Boolean","hostname","match","availableGifts","addArray","Map","has","set","delete","customerPhone","customerBox","receiverMemo","companyCountry","hasReceiver","lang","calculateTotalAmount","total","cost","rootReducer","combineReducers","logger","store","next","log","JSON","stringify","library","falTrashAlt","fasAngleRight","fasSortDown","createStore","composeWithDevTools","applyMiddleware","thunk","loggerMiddleware","ReactDOM","fallback","navigator","serviceWorker","ready","registration","unregister","module","exports"],"mappings":"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","file":"static/js/main.bc785151.chunk.js","sourcesContent":["export const actionEnum = {\r\n LOADING: 'LOADING',\r\n ADD_TO_CURRENT_GIFTS: 'ADD_TO_CURRENT_GIFTS',\r\n DECREMENT_CURRENT_GIFT: 'DECREMENT_CURRENT_GIFT',\r\n GET_PROPERTY_SETTINGS: 'GET_PROPERTY_SETTINGS',\r\n GET_VALUES: 'GET_VALUES',\r\n INCREMENT_CURRENT_GIFT: 'INCREMENT_CURRENT_GIFT',\r\n REMOVE_FROM_CURRENT_GIFTS: 'REMOVE_FROM_CURRENT_GIFTS',\r\n SELECT_CURRENT_PROPERTY: 'SELECT_CURRENT_PROPERTY',\r\n SELECT_FROM_AVAILABLE_GIFTS: 'SELECT_FROM_AVAILABLE_GIFTS',\r\n SET_COMPANY_ADDRESS_CITY: 'SET_COMPANY_ADDRESS_CITY',\r\n SET_COMPANY_ADDRESS_COUNTRY: 'SET_COMPANY_ADDRESS_COUNTRY',\r\n SET_COMPANY_ADDRESS_NUMBER: 'SET_COMPANY_ADDRESS_NUMBER',\r\n SET_COMPANY_ADDRESS_POSTAL: 'SET_COMPANY_ADDRESS_POSTAL',\r\n SET_COMPANY_ADDRESS_STREET: 'SET_COMPANY_ADDRESS_STREET',\r\n SET_COMPANY_NAME: 'SET_COMPANY_NAME',\r\n SET_COMPANY_VAT: 'SET_COMPANY_VAT',\r\n SET_EMAIL: 'SET_EMAIL',\r\n SET_FIRST_NAME: 'SET_FIRST_NAME',\r\n SET_INVOICE: 'SET_INVOICE',\r\n SET_LAST_NAME: 'SET_LAST_NAME',\r\n SET_PROGRESS_BAR: 'SET_PROGRESS_BAR',\r\n SET_PROGRESS_BAR_WIDTH: 'SET_PROGRESS_BAR_WIDTH',\r\n SET_TARGET: 'SET_TARGET',\r\n SET_TARGET_EMAIL: 'SET_TARGET_EMAIL',\r\n SET_TARGET_FIRST_NAME: 'SET_TARGET_FIRST_NAME',\r\n SET_TARGET_LAST_NAME: 'SET_TARGET_LAST_NAME',\r\n SET_TARGET_MESSAGE: 'SET_TARGET_MESSAGE',\r\n SET_MESSAGE: 'SET_MESSAGE',\r\n SET_TERMS_AND_CONDITIONS: 'SET_TERMS_AND_CONDITIONS',\r\n SET_TOTAL_COST: 'SET_TOTAL_COST', \r\n SET_SLUG: 'SET_SLUG',\r\n SET_VALUES: 'SET_VALUES',\r\n SAVE_TEMP_PURCHASE: 'SAVE_TEMP_PURCHASE',\r\n COMPLETE_PURCHASE: 'COMPLETE_PURCHASE',\r\n SET_CUSTOMER_PHONE: ' SET_CUSTOMER_PHONE',\r\n SET_CUSTOMER_STREET: ' SET_CUSTOMER_STREET',\r\n SET_CUSTOMER_NUMBER: ' SET_CUSTOMER_NUMBER',\r\n SET_CUSTOMER_POSTAL: ' SET_CUSTOMER_POSTAL',\r\n SET_CUSTOMER_CITY: ' SET_CUSTOMER_CITY',\r\n GET_LANGUAGES: 'GET_LANGUAGES',\r\n SET_LANG: 'SET_LANG',\r\n SET_TARGET_MAIL: 'SET_TARGET_MAIL'\r\n}","import axios from 'axios';\r\n\r\n//export default axios.create({\r\n// baseURL: \"https://giftcard-api-staging.azurewebsites.net/\"\r\n//});\r\nexport default axios.create({\r\n baseURL: process.env.REACT_APP_API_URL\r\n});\r\n","import { actionEnum } from '../../Enums/actionEnum';\r\nimport giftCardAPI from '../../API/giftCardAPI';\r\n\r\nlet previousId = 0;\r\n\r\nconst addToCurrentGifts = (value) => {\r\n const id = previousId + 1;\r\n const action = {\r\n type: actionEnum.ADD_TO_CURRENT_GIFTS,\r\n payload: {\r\n id, value\r\n }\r\n };\r\n previousId = id;\r\n return action;\r\n\r\n}\r\n\r\nconst decrementCurrentGift = (value) => {\r\n return {\r\n type: actionEnum.DECREMENT_CURRENT_GIFT,\r\n payload: {\r\n value\r\n }\r\n }\r\n}\r\n\r\nconst getGiftcardValues = (slug) => async (dispatch) => {\r\n const response = await giftCardAPI.get(`/api/GiftCard/Property/slug/${slug}`); \r\n\r\n if (response.data) {\r\n dispatch({\r\n type: actionEnum.GET_VALUES,\r\n payload: response.data.values,\r\n\r\n })\r\n }\r\n else {\r\n dispatch({\r\n type: actionEnum.GET_VALUES,\r\n payload: [],\r\n\r\n })\r\n }\r\n \r\n};\r\n\r\nconst saveTempPurchase = (tempPurchase) => async (dispatch) => {\r\n \r\n const response = await giftCardAPI.post(`/api/GiftCard/Purchase/Temp`, tempPurchase); \r\n\r\n dispatch({\r\n type: actionEnum.SAVE_TEMP_PURCHASE,\r\n payload: response.data,\r\n })\r\n}\r\n\r\nconst completePurchase = (tempId) => async (dispatch) => { \r\n const response = await giftCardAPI.post(`/api/GiftCard/Purchase/Complete/${tempId}`);\r\n\r\n dispatch({\r\n type: actionEnum.COMPLETE_PURCHASE,\r\n payload: response.data,\r\n })\r\n}\r\n\r\nconst incrementCurrentGift = (value) => {\r\n return {\r\n type: actionEnum.INCREMENT_CURRENT_GIFT,\r\n payload: {\r\n value\r\n }\r\n }\r\n}\r\n\r\nconst removeFromSelectedGifts = (value) => {\r\n return {\r\n type: actionEnum.REMOVE_FROM_CURRENT_GIFTS,\r\n payload: {\r\n value\r\n }\r\n }\r\n}\r\n\r\nconst selectGift = (value) => {\r\n return {\r\n type: actionEnum.SELECT_FROM_AVAILABLE_GIFTS,\r\n payload: {\r\n value\r\n }\r\n }\r\n}\r\n\r\nconst setTotalGift = (value) => {\r\n return {\r\n type: actionEnum.SET_TOTAL_COST,\r\n payload: {\r\n value\r\n }\r\n }\r\n}\r\n\r\nexport default {\r\n addToCurrentGifts,\r\n decrementCurrentGift,\r\n getGiftcardValues,\r\n incrementCurrentGift,\r\n removeFromSelectedGifts,\r\n selectGift,\r\n setTotalGift,\r\n saveTempPurchase,\r\n completePurchase\r\n}","import giftActions from './_giftActions';\r\nimport formActions from './_formActions';\r\nimport propertyActions from './_propertyActions';\r\n\r\nconst allActions = {\r\n formActions,\r\n giftActions,\r\n propertyActions\r\n}\r\n\r\nexport default allActions;","const setGift = (type, value) => {\r\n return {\r\n type: type,\r\n payload: {\r\n value\r\n }\r\n }\r\n}\r\n\r\nexport default {\r\n setGift\r\n}","import { actionEnum } from '../../Enums/actionEnum';\r\nimport giftCardAPI from '../../API/giftCardAPI';\r\n\r\nconst getPropertySettings = (slug) => async (dispatch) => {\r\n const response = await giftCardAPI.get(`/api/Property/Settings/${slug}`);\r\n\r\n if (response.data) {\r\n dispatch({\r\n type: actionEnum.GET_PROPERTY_SETTINGS,\r\n payload: response.data,\r\n })\r\n }\r\n else {\r\n dispatch({\r\n type: actionEnum.GET_PROPERTY_SETTINGS,\r\n payload: [],\r\n })\r\n } \r\n\r\n\r\n dispatch({\r\n type: actionEnum.LOADING,\r\n payload: false,\r\n\r\n })\r\n};\r\n\r\nconst loading = (state) => async (dispatch) => {\r\n dispatch({\r\n type: actionEnum.LOADING,\r\n payload: state,\r\n })\r\n}\r\n\r\nconst setCurrentProperty = (slug) => async (dispatch) => {\r\n const doesSlugExist = await giftCardAPI.post(`/api/Property/Settings/${slug}`);\r\n \r\n if (doesSlugExist.data) {\r\n dispatch({\r\n type: actionEnum.SELECT_CURRENT_PROPERTY,\r\n payload: slug,\r\n })\r\n }\r\n else {\r\n dispatch({\r\n type: actionEnum.SELECT_CURRENT_PROPERTY,\r\n payload: \"\",\r\n })\r\n }\r\n \r\n};\r\n\r\nexport default {\r\n getPropertySettings,\r\n setCurrentProperty,\r\n loading\r\n}","const languages = ['en', 'nl', 'fr'];\r\n\r\nexport default languages;","import i18n from 'i18next';\r\nimport { initReactI18next } from 'react-i18next';\r\n\r\nimport Backend from 'i18next-http-backend';\r\nimport LanguageDetector from 'i18next-browser-languagedetector';\r\nimport languages from '../src/js/Services/Helpers/languages';\r\n// not like to use this?\r\n// have a look at the Quick start guide \r\n// for passing in lng and translations on init\r\n\r\ni18n\r\n // load translation using http -> see /public/locales (i.e. https://github.com/i18next/react-i18next/tree/master/example/react/public/locales)\r\n // learn more: https://github.com/i18next/i18next-http-backend\r\n .use(Backend)\r\n // detect user language\r\n // learn more: https://github.com/i18next/i18next-browser-languageDetector\r\n .use(LanguageDetector)\r\n // pass the i18n instance to react-i18next.\r\n .use(initReactI18next)\r\n // init i18next\r\n // for all options read: https://www.i18next.com/overview/configuration-options\r\n .init({\r\n fallbackLng: 'en',\r\n debug: true,\r\n whitelist: languages,\r\n \r\n interpolation: {\r\n escapeValue: false,\r\n // not needed for react as it escapes by default\r\n }\r\n });\r\n\r\n\r\nexport default i18n;","import React from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { actionEnum } from '../../../../Services/Enums/actionEnum';\r\nimport allActions from '../../../../Services/Store/Actions';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport languages from '../../../../Services/Helpers/languages';\r\nimport i18n from '../../../../../i18n';\r\nimport { useTranslation } from 'react-i18next';\r\nimport countries from \"i18n-iso-countries\";\r\nexport default function Header() {\r\n \r\n\r\n countries.registerLocale(require(\"i18n-iso-countries/langs/en.json\"));\r\n countries.registerLocale(require(\"i18n-iso-countries/langs/fr.json\"));\r\n countries.registerLocale(require(\"i18n-iso-countries/langs/nl.json\"));\r\n const [t, i18n] = useTranslation();\r\n const steps = [t('Header.Steps.Amount'), t('Header.Steps.YourData'), t('Header.Steps.Payment')];\r\n const dispatch = useDispatch();\r\n const settings = useSelector(state => state.propertySettings);\r\n const progress = useSelector(state => state.progress);\r\n\r\n const options = languages.map(language => {\r\n return \r\n });\r\n\r\n dispatch(allActions.formActions.setGift(actionEnum.SET_LANG, i18n.language));\r\n function handleChange(e) {\r\n i18n.changeLanguage(e.target.value);\r\n dispatch(allActions.formActions.setGift(actionEnum.SET_LANG, e.target.value));\r\n }\r\n\r\n const url = `https://www.younight.com/${i18n.language}`;\r\n return (\r\n
\r\n
\r\n
\r\n

{settings.propertyName}

\r\n
\r\n \r\n
\r\n
\r\n\r\n {\r\n settings.company != undefined && settings.company != {} ? \r\n
\r\n

{settings.company.street} {settings.company.number}, {settings.company.postal} {settings.company.city}, {countries.getName(settings.company.country, i18n.language)}

\r\n
\r\n :\r\n
\r\n }\r\n\r\n \r\n
\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {steps.map((step, i) => {\r\n if (progress.currentStep === i + 1) {\r\n return {`${i + 1}. ${step}`}\r\n } else {\r\n return {`${i + 1}. ${step}`}\r\n }\r\n }\r\n )}\r\n
\r\n
\r\n
\r\n )\r\n}","import React from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport allActions from '../../../../../../../Services/Store/Actions';\r\n\r\nexport default function Card(props) {\r\n const selectedGift = useSelector(state => state.selectedGift);\r\n\r\n const dispatch = useDispatch();\r\n const cardSelect = (value) => {\r\n document.getElementById('custom__value').value = '';\r\n if (value === '') return;\r\n\r\n let gift = parseInt(value);\r\n if (typeof gift !== 'number' || gift <= 0) return;\r\n\r\n dispatch(allActions.giftActions.selectGift(value));\r\n }\r\n\r\n return (\r\n
cardSelect(props.value)}>\r\n

{props.currency}

 

{props.value}

\r\n
\r\n )\r\n}","export const currencyEnum = {\r\n Euro: \"€\",\r\n Dollar: \"$\"\r\n}","import React from 'react';\r\nimport { useSelector } from 'react-redux';\r\n\r\nimport Card from './Card';\r\n\r\nimport { currencyEnum } from '../../../../../../Services/Enums/currencyEnum';\r\n\r\nexport default function CardsList() {\r\n const values = useSelector(state => state.giftCardValues);\r\n\r\n const renderList = values.map((value, index) => {\r\n if (index % 3 === 0 && index > 0) {\r\n return (\r\n
\r\n
\r\n \r\n
\r\n )\r\n }\r\n return \r\n });\r\n\r\n return (\r\n
\r\n {values !== undefined && values.length > 0 && renderList } \r\n
\r\n );\r\n\r\n}\r\n\r\n","import React from 'react';\r\nimport { useDispatch } from 'react-redux';\r\n\r\nimport allActions from '../../../../../../Services/Store/Actions';\r\n\r\nimport { currencyEnum } from '../../../../../../Services/Enums/currencyEnum.js';\r\nimport { useTranslation } from 'react-i18next';\r\nexport default function CustomCard() {\r\n const dispatch = useDispatch();\r\n const [t, i18n] = useTranslation();\r\n const cardReset = () => {\r\n dispatch(allActions.giftActions.selectGift(0));\r\n };\r\n\r\n return (\r\n
\r\n
\r\n

{currencyEnum.Euro}

\r\n
\r\n cardReset()} placeholder={t('Main.Amount.CustomCard.EnterYourValue')}>\r\n
\r\n )\r\n}\r\n","export default class Progress {\r\n currentStep = 1;\r\n width = 0;\r\n\r\n constructor(width, currentStep) { \r\n this.currentStep = currentStep;\r\n this.width = width;\r\n }\r\n}","import React from 'react';\r\nimport { useSelector } from 'react-redux';\r\nexport default function SubmitButton(props) {\r\n\r\n const settings = useSelector(state => state.propertySettings);\r\n \r\n return (\r\n \r\n )\r\n}\r\n","import React, { useEffect } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { useHistory, useParams } from 'react-router-dom';\r\n\r\nimport { actionEnum } from '../../../../../Services/Enums/actionEnum';\r\nimport allActions from '../../../../../Services/Store/Actions';\r\n\r\nimport CardsList from './CardsList/CardsList';\r\nimport CustomCard from './CustomCard/CustomCard';\r\nimport Progress from '../../../../../Services/Models/Progress';\r\nimport SubmitButton from '../../../../../Elements/SubmitButton';\r\nimport { useTranslation } from 'react-i18next';\r\nexport default function Amount() {\r\n const selectedGift = useSelector(state => state.selectedGift);\r\n const settings = useSelector(state => state.propertySettings);\r\n const [t, i18n] = useTranslation();\r\n const dispatch = useDispatch();\r\n const history = useHistory();\r\n const { slug } = useParams();\r\n\r\n useEffect(() => {\r\n dispatch(allActions.formActions.setGift(actionEnum.SET_PROGRESS_BAR, new Progress(7, 1)));\r\n }, []);\r\n\r\n const card__select = () => {\r\n let selectedValue = selectedGift;\r\n if (selectedValue === '' || typeof selectedValue !== 'number' || isNaN(selectedValue) || selectedValue <= 0) {\r\n let value = parseInt(document.getElementById('custom__value').value);\r\n if (value === '' || typeof value !== 'number' || isNaN(value) || value <= 0 || value < 25 || value > 250) return;\r\n selectedValue = value;\r\n }\r\n\r\n dispatch(allActions.giftActions.addToCurrentGifts(selectedValue));\r\n dispatch(allActions.giftActions.selectGift(0));\r\n\r\n history.push(`${slug}/data`);\r\n\r\n };\r\n\r\n const valuesBody = () => {\r\n if (settings.isActive) {\r\n return (\r\n \r\n

{t('Main.Amount.PickAnAmount')}

\r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n else {\r\n return (\r\n \r\n

{t('Main.Amount.ModuleNotActive')}

\r\n
\r\n );\r\n }\r\n };\r\n\r\n return (\r\n
\r\n {valuesBody()}\r\n
\r\n )\r\n}\r\n","export const targetEnum = {\r\n Myself: 0,\r\n Someone: 1\r\n}","const countries = [ \r\n { name: \"Afghanistan\", code: \"AF\"}, \r\n { name: \"Åland Islands\", code: \"AX\"}, \r\n { name: \"Albania\", code: \"AL\"}, \r\n { name: \"Algeria\", code: \"DZ\"}, \r\n { name: \"American Samoa\", code: \"AS\"}, \r\n { name: \"Andorra\", code: \"AD\"}, \r\n { name: \"Angola\", code: \"AO\"}, \r\n { name: \"Anguilla\", code: \"AI\"}, \r\n { name: \"Antarctica\", code: \"AQ\"}, \r\n { name: \"Antigua and Barbuda\", code: \"AG\"}, \r\n { name: \"Argentina\", code: \"AR\"}, \r\n { name: \"Armenia\", code: \"AM\"}, \r\n { name: \"Aruba\", code: \"AW\"}, \r\n { name: \"Australia\", code: \"AU\"}, \r\n { name: \"Austria\", code: \"AT\"}, \r\n { name: \"Azerbaijan\", code: \"AZ\"}, \r\n { name: \"Bahamas\", code: \"BS\"}, \r\n { name: \"Bahrain\", code: \"BH\"}, \r\n { name: \"Bangladesh\", code: \"BD\"}, \r\n { name: \"Barbados\", code: \"BB\"}, \r\n { name: \"Belarus\", code: \"BY\"}, \r\n { name: \"Belgium\", code: \"BE\"}, \r\n { name: \"Belize\", code: \"BZ\"}, \r\n { name: \"Benin\", code: \"BJ\"}, \r\n { name: \"Bermuda\", code: \"BM\"}, \r\n { name: \"Bhutan\", code: \"BT\"}, \r\n { name: \"Bolivia\", code: \"BO\"}, \r\n { name: \"Bosnia and Herzegovina\", code: \"BA\"}, \r\n { name: \"Botswana\", code: \"BW\"}, \r\n { name: \"Bouvet Island\", code: \"BV\"}, \r\n { name: \"Brazil\", code: \"BR\"}, \r\n { name: \"British Indian Ocean Territory\", code: \"IO\"}, \r\n { name: \"Brunei Darussalam\", code: \"BN\"}, \r\n { name: \"Bulgaria\", code: \"BG\"}, \r\n { name: \"Burkina Faso\", code: \"BF\"}, \r\n { name: \"Burundi\", code: \"BI\"}, \r\n { name: \"Cambodia\", code: \"KH\"}, \r\n { name: \"Cameroon\", code: \"CM\"}, \r\n { name: \"Canada\", code: \"CA\"}, \r\n { name: \"Cape Verde\", code: \"CV\"}, \r\n { name: \"Cayman Islands\", code: \"KY\"}, \r\n { name: \"Central African Republic\", code: \"CF\"}, \r\n { name: \"Chad\", code: \"TD\"}, \r\n { name: \"Chile\", code: \"CL\"}, \r\n { name: \"China\", code: \"CN\"}, \r\n { name: \"Christmas Island\", code: \"CX\"}, \r\n { name: \"Cocos (Keeling) Islands\", code: \"CC\"}, \r\n { name: \"Colombia\", code: \"CO\"}, \r\n { name: \"Comoros\", code: \"KM\"}, \r\n { name: \"Congo\", code: \"CG\"}, \r\n { name: \"Congo, The Democratic Republic of the\", code: \"CD\"}, \r\n { name: \"Cook Islands\", code: \"CK\"}, \r\n { name: \"Costa Rica\", code: \"CR\"}, \r\n { name: \"Cote D'Ivoire\", code: \"CI\"}, \r\n { name: \"Croatia\", code: \"HR\"}, \r\n { name: \"Cuba\", code: \"CU\"}, \r\n { name: \"Cyprus\", code: \"CY\"}, \r\n { name: \"Czech Republic\", code: \"CZ\"}, \r\n { name: \"Denmark\", code: \"DK\"}, \r\n { name: \"Djibouti\", code: \"DJ\"}, \r\n { name: \"Dominica\", code: \"DM\"}, \r\n { name: \"Dominican Republic\", code: \"DO\"}, \r\n { name: \"Ecuador\", code: \"EC\"}, \r\n { name: \"Egypt\", code: \"EG\"}, \r\n { name: \"El Salvador\", code: \"SV\"}, \r\n { name: \"Equatorial Guinea\", code: \"GQ\"}, \r\n { name: \"Eritrea\", code: \"ER\"}, \r\n { name: \"Estonia\", code: \"EE\"}, \r\n { name: \"Ethiopia\", code: \"ET\"}, \r\n { name: \"Falkland Islands (Malvinas)\", code: \"FK\"}, \r\n { name: \"Faroe Islands\", code: \"FO\"}, \r\n { name: \"Fiji\", code: \"FJ\"}, \r\n { name: \"Finland\", code: \"FI\"}, \r\n { name: \"France\", code: \"FR\"}, \r\n { name: \"French Guiana\", code: \"GF\"}, \r\n { name: \"French Polynesia\", code: \"PF\"}, \r\n { name: \"French Southern Territories\", code: \"TF\"}, \r\n { name: \"Gabon\", code: \"GA\"}, \r\n { name: \"Gambia\", code: \"GM\"}, \r\n { name: \"Georgia\", code: \"GE\"}, \r\n { name: \"Germany\", code: \"DE\"}, \r\n { name: \"Ghana\", code: \"GH\"}, \r\n { name: \"Gibraltar\", code: \"GI\"}, \r\n { name: \"Greece\", code: \"GR\"}, \r\n { name: \"Greenland\", code: \"GL\"}, \r\n { name: \"Grenada\", code: \"GD\"}, \r\n { name: \"Guadeloupe\", code: \"GP\"}, \r\n { name: \"Guam\", code: \"GU\"}, \r\n { name: \"Guatemala\", code: \"GT\"}, \r\n { name: \"Guernsey\", code: \"GG\"}, \r\n { name: \"Guinea\", code: \"GN\"}, \r\n { name: \"Guinea-Bissau\", code: \"GW\"}, \r\n { name: \"Guyana\", code: \"GY\"}, \r\n { name: \"Haiti\", code: \"HT\"}, \r\n { name: \"Heard Island and Mcdonald Islands\", code: \"HM\"}, \r\n { name: \"Holy See (Vatican City State)\", code: \"VA\"}, \r\n { name: \"Honduras\", code: \"HN\"}, \r\n { name: \"Hong Kong\", code: \"HK\"}, \r\n { name: \"Hungary\", code: \"HU\"}, \r\n { name: \"Iceland\", code: \"IS\"}, \r\n { name: \"India\", code: \"IN\"}, \r\n { name: \"Indonesia\", code: \"ID\"}, \r\n { name: \"Iran, Islamic Republic Of\", code: \"IR\"}, \r\n { name: \"Iraq\", code: \"IQ\"}, \r\n { name: \"Ireland\", code: \"IE\"}, \r\n { name: \"Isle of Man\", code: \"IM\"}, \r\n { name: \"Israel\", code: \"IL\"}, \r\n { name: \"Italy\", code: \"IT\"}, \r\n { name: \"Jamaica\", code: \"JM\"}, \r\n { name: \"Japan\", code: \"JP\"}, \r\n { name: \"Jersey\", code: \"JE\"}, \r\n { name: \"Jordan\", code: \"JO\"}, \r\n { name: \"Kazakhstan\", code: \"KZ\"}, \r\n { name: \"Kenya\", code: \"KE\"}, \r\n { name: \"Kiribati\", code: \"KI\"}, \r\n { name: \"Korea (the Democratic People's Republic of)\", code: \"KP\"}, \r\n { name: \"Korea, Republic of\", code: \"KR\"}, \r\n { name: \"Kuwait\", code: \"KW\"}, \r\n { name: \"Kyrgyzstan\", code: \"KG\"}, \r\n { name: \"Lao People's Democratic Republic\", code: \"LA\"}, \r\n { name: \"Latvia\", code: \"LV\"}, \r\n { name: \"Lebanon\", code: \"LB\"}, \r\n { name: \"Lesotho\", code: \"LS\"}, \r\n { name: \"Liberia\", code: \"LR\"}, \r\n { name: \"Libyan Arab Jamahiriya\", code: \"LY\"}, \r\n { name: \"Liechtenstein\", code: \"LI\"}, \r\n { name: \"Lithuania\", code: \"LT\"}, \r\n { name: \"Luxembourg\", code: \"LU\"}, \r\n { name: \"Macao\", code: \"MO\"}, \r\n { name: \"Macedonia, The Former Yugoslav Republic of\", code: \"MK\"}, \r\n { name: \"Madagascar\", code: \"MG\"}, \r\n { name: \"Malawi\", code: \"MW\"}, \r\n { name: \"Malaysia\", code: \"MY\"}, \r\n { name: \"Maldives\", code: \"MV\"}, \r\n { name: \"Mali\", code: \"ML\"}, \r\n { name: \"Malta\", code: \"MT\"}, \r\n { name: \"Marshall Islands\", code: \"MH\"}, \r\n { name: \"Martinique\", code: \"MQ\"}, \r\n { name: \"Mauritania\", code: \"MR\"}, \r\n { name: \"Mauritius\", code: \"MU\"}, \r\n { name: \"Mayotte\", code: \"YT\"}, \r\n { name: \"Mexico\", code: \"MX\"}, \r\n { name: \"Micronesia, Federated States of\", code: \"FM\"}, \r\n { name: \"Moldova, Republic of\", code: \"MD\"}, \r\n { name: \"Monaco\", code: \"MC\"}, \r\n { name: \"Mongolia\", code: \"MN\"}, \r\n { name: \"Montenegro\", code: \"ME\"},\r\n { name: \"Montserrat\", code: \"MS\"},\r\n { name: \"Morocco\", code: \"MA\"}, \r\n { name: \"Mozambique\", code: \"MZ\"}, \r\n { name: \"Myanmar\", code: \"MM\"}, \r\n { name: \"Namibia\", code: \"NA\"}, \r\n { name: \"Nauru\", code: \"NR\"}, \r\n { name: \"Nepal\", code: \"NP\"}, \r\n { name: \"Netherlands\", code: \"NL\"}, \r\n { name: \"Netherlands Antilles\", code: \"AN\"}, \r\n { name: \"New Caledonia\", code: \"NC\"}, \r\n { name: \"New Zealand\", code: \"NZ\"}, \r\n { name: \"Nicaragua\", code: \"NI\"}, \r\n { name: \"Niger\", code: \"NE\"}, \r\n { name: \"Nigeria\", code: \"NG\"}, \r\n { name: \"Niue\", code: \"NU\"}, \r\n { name: \"Norfolk Island\", code: \"NF\"}, \r\n { name: \"Northern Mariana Islands\", code: \"MP\"}, \r\n { name: \"Norway\", code: \"NO\"}, \r\n { name: \"Oman\", code: \"OM\"}, \r\n { name: \"Pakistan\", code: \"PK\"}, \r\n { name: \"Palau\", code: \"PW\"}, \r\n { name: \"Palestinian Territory, Occupied\", code: \"PS\"}, \r\n { name: \"Panama\", code: \"PA\"}, \r\n { name: \"Papua New Guinea\", code: \"PG\"}, \r\n { name: \"Paraguay\", code: \"PY\"}, \r\n { name: \"Peru\", code: \"PE\"}, \r\n { name: \"Philippines\", code: \"PH\"}, \r\n { name: \"Pitcairn\", code: \"PN\"}, \r\n { name: \"Poland\", code: \"PL\"}, \r\n { name: \"Portugal\", code: \"PT\"}, \r\n { name: \"Puerto Rico\", code: \"PR\"}, \r\n { name: \"Qatar\", code: \"QA\"}, \r\n { name: \"Reunion\", code: \"RE\"}, \r\n { name: \"Romania\", code: \"RO\"}, \r\n { name: \"Russian Federation\", code: \"RU\"}, \r\n { name: \"RWANDA\", code: \"RW\"}, \r\n { name: \"Saint Helena\", code: \"SH\"}, \r\n { name: \"Saint Kitts and Nevis\", code: \"KN\"}, \r\n { name: \"Saint Lucia\", code: \"LC\"}, \r\n { name: \"Saint Pierre and Miquelon\", code: \"PM\"}, \r\n { name: \"Saint Vincent and the Grenadines\", code: \"VC\"}, \r\n { name: \"Samoa\", code: \"WS\"}, \r\n { name: \"San Marino\", code: \"SM\"}, \r\n { name: \"Sao Tome and Principe\", code: \"ST\"}, \r\n { name: \"Saudi Arabia\", code: \"SA\"}, \r\n { name: \"Senegal\", code: \"SN\"}, \r\n { name: \"Serbia\", code: \"RS\"}, \r\n { name: \"Seychelles\", code: \"SC\"}, \r\n { name: \"Sierra Leone\", code: \"SL\"}, \r\n { name: \"Singapore\", code: \"SG\"}, \r\n { name: \"Slovakia\", code: \"SK\"}, \r\n { name: \"Slovenia\", code: \"SI\"}, \r\n { name: \"Solomon Islands\", code: \"SB\"}, \r\n { name: \"Somalia\", code: \"SO\"}, \r\n { name: \"South Africa\", code: \"ZA\"}, \r\n { name: \"South Georgia and the South Sandwich Islands\", code: \"GS\"}, \r\n { name: \"Spain\", code: \"ES\"}, \r\n { name: \"Sri Lanka\", code: \"LK\"}, \r\n { name: \"Sudan\", code: \"SD\"}, \r\n { name: \"Suriname\", code: \"SR\"}, \r\n { name: \"Svalbard and Jan Mayen\", code: \"SJ\"}, \r\n { name: \"Swaziland\", code: \"SZ\"}, \r\n { name: \"Sweden\", code: \"SE\"}, \r\n { name: \"Switzerland\", code: \"CH\"}, \r\n { name: \"Syrian Arab Republic\", code: \"SY\"}, \r\n { name: \"Taiwan, Province of China\", code: \"TW\"}, \r\n { name: \"Tajikistan\", code: \"TJ\"}, \r\n { name: \"Tanzania, United Republic of\", code: \"TZ\"}, \r\n { name: \"Thailand\", code: \"TH\"}, \r\n { name: \"Timor-Leste\", code: \"TL\"}, \r\n { name: \"Togo\", code: \"TG\"}, \r\n { name: \"Tokelau\", code: \"TK\"}, \r\n { name: \"Tonga\", code: \"TO\"}, \r\n { name: \"Trinidad and Tobago\", code: \"TT\"}, \r\n { name: \"Tunisia\", code: \"TN\"}, \r\n { name: \"Turkey\", code: \"TR\"}, \r\n { name: \"Turkmenistan\", code: \"TM\"}, \r\n { name: \"Turks and Caicos Islands\", code: \"TC\"}, \r\n { name: \"Tuvalu\", code: \"TV\"}, \r\n { name: \"Uganda\", code: \"UG\"}, \r\n { name: \"Ukraine\", code: \"UA\"}, \r\n { name: \"United Arab Emirates\", code: \"AE\"}, \r\n { name: \"United Kingdom\", code: \"GB\"}, \r\n { name: \"United States of America\", code: \"US\"}, \r\n { name: \"United States Minor Outlying Islands\", code: \"UM\"}, \r\n { name: \"Uruguay\", code: \"UY\"}, \r\n { name: \"Uzbekistan\", code: \"UZ\"}, \r\n { name: \"Vanuatu\", code: \"VU\"}, \r\n { name: \"Venezuela\", code: \"VE\"}, \r\n { name: \"Viet Nam\", code: \"VN\"}, \r\n { name: \"Virgin Islands, British\", code: \"VG\"}, \r\n { name: \"Virgin Islands, U.S.\", code: \"VI\"}, \r\n { name: \"Wallis and Futuna\", code: \"WF\"}, \r\n { name: \"Western Sahara\", code: \"EH\"}, \r\n { name: \"Yemen\", code: \"YE\"}, \r\n { name: \"Zambia\", code: \"ZM\"}, \r\n { name: \"Zimbabwe\", code: \"ZW\"} \r\n];\r\n\r\nexport default countries;","import React, { useEffect, useState } from 'react';\r\nimport { useDispatch } from 'react-redux';\r\nimport { useTranslation } from 'react-i18next';\r\nexport default function Dropdown(props) {\r\n const [filter, setFilter] = useState('');\r\n const [isOpen, setIsOpen] = useState(false);\r\n const [options, setOptions] = useState(null);\r\n const [selectedItem, setSelectedItem] = useState('');\r\n const [t, i18n] = useTranslation();\r\n const dispatch = useDispatch();\r\n\r\n const list = props.list.map((item) => { return { name: item.text, value: item.value } });\r\n\r\n useEffect(() => {\r\n setOptions(list);\r\n }, []);\r\n\r\n const filterOptions = (e) => {\r\n let input = e.target.value.toLowerCase();\r\n let filtered = list.filter((option) => {\r\n return option.name.toLowerCase().includes(input);\r\n });\r\n setFilter(input);\r\n setOptions(filtered);\r\n }\r\n\r\n const openMenu = () => {\r\n let menu = document.getElementsByClassName('select-search-box__select')[0];\r\n if (!menu.classList.contains('select-search-box__select--display')) {\r\n let search = document.getElementsByClassName('select-search-box__search')[0];\r\n let countryNode = document.getElementsByClassName('country__select')[0];\r\n hideOnClickOutside(countryNode);\r\n if (!search.classList.contains('select-search-box__search--selected')) {\r\n search.classList.add('select-search-box__search--selected');\r\n }\r\n\r\n menu.classList.add('select-search-box__select--display');\r\n setIsOpen(true);\r\n }\r\n }\r\n\r\n const closeMenu = () => {\r\n let menu = document.getElementsByClassName('select-search-box__select')[0];\r\n if (menu.classList.contains('select-search-box__select--display')) {\r\n let search = document.getElementsByClassName('select-search-box__search')[0];\r\n if (search.classList.contains('select-search-box__search--selected')) {\r\n search.classList.remove('select-search-box__search--selected');\r\n }\r\n\r\n menu.classList.remove('select-search-box__select--display');\r\n search.value = \"\";\r\n setFilter('');\r\n setIsOpen(false);\r\n setOptions(list);\r\n }\r\n }\r\n\r\n function hideOnClickOutside(el) {\r\n const outsideClickListener = event => {\r\n if (!el.contains(event.target) && isVisible(el)) {\r\n closeMenu();\r\n removeClickListener();\r\n }\r\n }\r\n\r\n const removeClickListener = () => {\r\n document.removeEventListener('click', outsideClickListener);\r\n }\r\n\r\n document.addEventListener('click', outsideClickListener);\r\n }\r\n\r\n const isVisible = elem => !!elem && !!(elem.offsetWidth || elem.offsetHeight || elem.getClientRects().length);\r\n\r\n return (\r\n
\r\n
\r\n openMenu()}\r\n onChange={(e) => filterOptions(e)} />\r\n {(options !== null && options.length > 0) &&\r\n
\r\n
    \r\n {options.map((item) =>\r\n
  • {\r\n setSelectedItem(item.name);\r\n dispatch(props.action(props.actionName, item.name));\r\n closeMenu();\r\n }}>\r\n {item.name}\r\n
  • \r\n )}\r\n
\r\n
\r\n }\r\n
\r\n
\r\n )\r\n}\r\n","import React from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport countries from '../../../../../../../Services/Data/countries';\r\n\r\nimport { actionEnum } from '../../../../../../../Services/Enums/actionEnum';\r\nimport allActions from '../../../../../../../Services/Store/Actions';\r\n\r\nimport Dropdown from '../../../../../../../Elements/Dropdown';\r\nimport { useTranslation } from 'react-i18next';\r\nexport default function CompanyForm() {\r\n const listCountries = countries.map((item) => { return { value: item.code, text: item.name } })\r\n const [t, i18n] = useTranslation();\r\n const gift = useSelector(state => state.formGift);\r\n const dispatch = useDispatch();\r\n\r\n return (\r\n
\r\n
\r\n \r\n dispatch(allActions.formActions.setGift(actionEnum.SET_COMPANY_NAME, e.target.value))} />\r\n
\r\n
\r\n \r\n dispatch(allActions.formActions.setGift(actionEnum.SET_COMPANY_VAT, e.target.value))} />\r\n
\r\n
\r\n \r\n dispatch(allActions.formActions.setGift(actionEnum.SET_COMPANY_ADDRESS_STREET, e.target.value))} />\r\n
\r\n
\r\n \r\n dispatch(allActions.formActions.setGift(actionEnum.SET_COMPANY_ADDRESS_NUMBER, e.target.value))} />\r\n
\r\n
\r\n \r\n dispatch(allActions.formActions.setGift(actionEnum.SET_COMPANY_ADDRESS_POSTAL, e.target.value))} />\r\n
\r\n
\r\n \r\n dispatch(allActions.formActions.setGift(actionEnum.SET_COMPANY_ADDRESS_CITY, e.target.value))} />\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n )\r\n}\r\n","import React, { useState, useEffect } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\n\r\nimport { targetEnum } from '../../../../../../Services/Enums/targetEnum';\r\nimport { actionEnum } from '../../../../../../Services/Enums/actionEnum';\r\nimport allActions from '../../../../../../Services/Store/Actions';\r\n\r\nimport CompanyForm from './CompanyForm';\r\nimport SubmitButton from '../../../../../../Elements/SubmitButton';\r\nimport { loadStripe } from \"@stripe/stripe-js\";\r\nimport { fal } from '@fortawesome/pro-light-svg-icons';\r\nimport { useTranslation } from 'react-i18next';\r\nexport default function FormGift() {\r\n const [target, setTarget] = useState(targetEnum.Myself);\r\n const [invoice, setInvoice] = useState(false);\r\n const [termsAndConditions, setTermsAndConditions] = useState(false);\r\n const [t, i18n] = useTranslation();\r\n const gift = useSelector(state => state.formGift);\r\n const slug = useSelector(state => state.currentProperty);\r\n const settings = useSelector(state => state.propertySettings);\r\n const paymentData = useSelector(state => state.paymentData);\r\n const dispatch = useDispatch();\r\n const state = useSelector(state => state);\r\n\r\n\r\n\r\n const changeTarget = (value) => {\r\n let content = document.getElementById('target__someone');\r\n if (content.style.maxHeight) {\r\n content.style.maxHeight = null;\r\n }\r\n else {\r\n content.style.maxHeight = content.scrollHeight + \"px\";\r\n }\r\n\r\n setTarget(value);\r\n dispatch(allActions.formActions.setGift(actionEnum.SET_TARGET, value));\r\n }\r\n\r\n const changeTargetMail = (value) => { \r\n setTarget(value);\r\n dispatch(allActions.formActions.setGift(actionEnum.SET_TARGET_MAIL, value));\r\n }\r\n\r\n const getTransitionTime = (el) => {\r\n let time = window.getComputedStyle(el).transitionDuration;\r\n if (time.charAt(time.length - 1) === 's' && time.charAt(time.length - 2) !== 'm') {\r\n time.slice(0, -1);\r\n time = parseFloat(time) * 1000;\r\n }\r\n\r\n return parseFloat(time);\r\n }\r\n\r\n const changeInvoice = () => {\r\n let content = document.getElementById('company__form');\r\n if (content.style.maxHeight) {\r\n content.style.overflow = \"hidden\";\r\n content.style.maxHeight = null;\r\n }\r\n else {\r\n const timeout = getTransitionTime(content);\r\n setTimeout(() => {\r\n content.style.overflow = \"visible\";\r\n }, timeout);\r\n content.style.maxHeight = content.scrollHeight + \"px\";\r\n }\r\n\r\n setInvoice(!invoice);\r\n dispatch(allActions.formActions.setGift(actionEnum.SET_INVOICE, !gift.asksInvoice));\r\n }\r\n\r\n const changeTermsAndConditions = () => {\r\n setTermsAndConditions(!termsAndConditions);\r\n dispatch(allActions.formActions.setGift(actionEnum.SET_TERMS_AND_CONDITIONS, !gift.acceptTermsAndConditions));\r\n }\r\n\r\n const validateForm = (fields, validForm) => {\r\n\r\n var requiredFields = document.getElementsByClassName(fields);\r\n for (var i = 0; i < requiredFields.length; i++) {\r\n if (requiredFields[i].getAttribute(\"value\") == \"\") {\r\n validForm = false;\r\n requiredFields[i].classList.add(\"validation-error\");\r\n }\r\n else {\r\n requiredFields[i].classList.remove(\"validation-error\");\r\n }\r\n }\r\n\r\n return validForm;\r\n }\r\n\r\n\r\n const saveTempPurchase = () => {\r\n\r\n dispatch(allActions.formActions.setGift(actionEnum.SET_SLUG, slug));\r\n\r\n var validForm = true;\r\n\r\n validForm = validateForm(\"required\", validForm);\r\n\r\n\r\n if (gift.target === targetEnum.Someone) {\r\n validForm = validateForm(\"required-receiver\", validForm);\r\n }\r\n\r\n if (gift.asksInvoice) {\r\n validForm = validateForm(\"required-company\", validForm);\r\n }\r\n\r\n if (!gift.acceptTermsAndConditions) {\r\n validForm = false;\r\n document.getElementById(\"terms-and-conditions-label\").classList.add(\"validation-error-text\");\r\n }\r\n else {\r\n document.getElementById(\"terms-and-conditions-label\").classList.remove(\"validation-error-text\");\r\n }\r\n\r\n var values = state.currentGifts;\r\n\r\n var selectedGiftCards = [];\r\n for (let [k, v] of values) {\r\n selectedGiftCards.push({\r\n amount: k,\r\n quantity: v\r\n });\r\n }\r\n\r\n dispatch(allActions.formActions.setGift(actionEnum.SET_VALUES, selectedGiftCards));\r\n\r\n if (validForm) {\r\n dispatch(allActions.giftActions.saveTempPurchase(gift));\r\n }\r\n\r\n }\r\n\r\n const openTermsAndConditions = () => {\r\n const backdrop = document.getElementsByClassName('backdrop')[0];\r\n const modal = document.getElementsByClassName('modal')[0];\r\n\r\n if (!backdrop.classList.contains('is-blacked-out')) {\r\n backdrop.classList.add('is-blacked-out');\r\n }\r\n\r\n if (!modal.classList.contains('is-active')) {\r\n modal.classList.add('is-active');\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n async function GetPaymentData() {\r\n if (paymentData !== {}) {\r\n\r\n if (!paymentData.isStripe && paymentData.redirectUrl !== undefined) {\r\n window.location.href = paymentData.redirectUrl;\r\n }\r\n\r\n if (paymentData.sessionId !== undefined && paymentData.apiKey !== undefined && paymentData.isStripe) {\r\n const stripePromise = loadStripe(\r\n paymentData.apiKey\r\n );\r\n\r\n const stripe = await stripePromise;\r\n\r\n stripe.redirectToCheckout({\r\n // Make the id field from the Checkout Session creation API response\r\n // available to this file, so you can provide it as parameter here\r\n // instead of the {{CHECKOUT_SESSION_ID}} placeholder.\r\n sessionId: paymentData.sessionId\r\n\r\n }).then(function (result) {\r\n // If `redirectToCheckout` fails due to a browser or network\r\n // error, display the localized error message to your customer\r\n // using `result.error.message`.\r\n });\r\n }\r\n }\r\n }\r\n GetPaymentData();\r\n });\r\n\r\n return (\r\n
\r\n

{t('Header.Steps.YourData')}

\r\n
\r\n \r\n dispatch(allActions.formActions.setGift(actionEnum.SET_FIRST_NAME, e.target.value))} />\r\n
\r\n
\r\n \r\n dispatch(allActions.formActions.setGift(actionEnum.SET_LAST_NAME, e.target.value))} />\r\n
\r\n
\r\n \r\n dispatch(allActions.formActions.setGift(actionEnum.SET_EMAIL, e.target.value))} />\r\n
\r\n
\r\n \r\n dispatch(allActions.formActions.setGift(actionEnum.SET_CUSTOMER_STREET, e.target.value))} />\r\n
\r\n
\r\n \r\n dispatch(allActions.formActions.setGift(actionEnum.SET_CUSTOMER_STREET, e.target.value))} />\r\n
\r\n
\r\n \r\n dispatch(allActions.formActions.setGift(actionEnum.SET_CUSTOMER_POSTAL, e.target.value))} />\r\n
\r\n
\r\n \r\n dispatch(allActions.formActions.setGift(actionEnum.SET_CUSTOMER_CITY, e.target.value))} />\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n dispatch(allActions.formActions.setGift(actionEnum.SET_TARGET_FIRST_NAME, e.target.value))} />\r\n
\r\n
\r\n \r\n dispatch(allActions.formActions.setGift(actionEnum.SET_TARGET_LAST_NAME, e.target.value))} />\r\n
\r\n
\r\n \r\n dispatch(allActions.formActions.setGift(actionEnum.SET_TARGET_EMAIL, e.target.value))} />\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n changeInvoice()} />\r\n \r\n \r\n
\r\n
\r\n changeTermsAndConditions()} />\r\n \r\n
\r\n
\r\n \r\n
\r\n )\r\n}\r\n","import React, { useEffect } from 'react';\r\nimport { useDispatch } from 'react-redux';\r\n\r\nimport allActions from '../../../../../Services/Store/Actions';\r\nimport { actionEnum } from '../../../../../Services/Enums/actionEnum';\r\n\r\nimport FormGift from './FormGift';\r\nimport Progress from '../../../../../Services/Models/Progress';\r\n\r\n\r\nexport default function Data() {\r\n const dispatch = useDispatch();\r\n\r\n\r\n useEffect(() => {\r\n dispatch(allActions.formActions.setGift(actionEnum.SET_PROGRESS_BAR, new Progress(50, 2)));\r\n }, []);\r\n\r\n return (\r\n
\r\n \r\n
\r\n )\r\n}\r\n","import React from 'react';\r\nimport { useSelector } from 'react-redux';\r\n\r\nexport default function Loader() {\r\n const settings = useSelector(state => state.propertySettings);\r\n\r\n return (\r\n
\r\n )\r\n}","import { actionEnum } from '../../Enums/actionEnum';\r\n\r\n\r\nconst completePurchase = (state = null, action) => {\r\n switch(action.type) {\r\n case actionEnum.COMPLETE_PURCHASE:\r\n return action.payload;\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\nexport default completePurchase;","import React, { useEffect } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { useParams } from 'react-router-dom';\r\n\r\nimport allActions from '../../../../../Services/Store/Actions';\r\nimport { actionEnum } from '../../../../../Services/Enums/actionEnum';\r\n\r\nimport Check from \"../../../../../../img/check.svg\";\r\nimport Progress from '../../../../../Services/Models/Progress';\r\nimport Loader from '../Loader';\r\nimport { useTranslation } from 'react-i18next';\r\nimport completePurchase from '../../../../../Services/Store/Reducers/_completePurchase';\r\nexport default function PaidBody() {\r\n const { id } = useParams();\r\n const dispatch = useDispatch();\r\n const completePurchases = useSelector(state => state.completePurchase);\r\n const settings = useSelector(state => state.propertySettings);\r\n const [t, i18n] = useTranslation();\r\n\r\n return (\r\n
\r\n \"Success!\"\r\n
{t('Main.Summary.Title')}
\r\n
\r\n\r\n\r\n
\r\n
\r\n {t('Main.Summary.MailNotReceived', { settings })}\r\n
\r\n
\r\n )\r\n}","\r\nimport React, { useEffect } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { useParams } from 'react-router-dom';\r\n\r\nimport allActions from '../../../../../Services/Store/Actions';\r\nimport { actionEnum } from '../../../../../Services/Enums/actionEnum';\r\n\r\nimport Check from \"../../../../../../img/check.svg\";\r\nimport Progress from '../../../../../Services/Models/Progress';\r\nimport Loader from '../Loader';\r\nimport { useTranslation } from 'react-i18next';\r\nimport completePurchase from '../../../../../Services/Store/Reducers/_completePurchase';\r\nexport default function PendingBody() {\r\n const { id } = useParams();\r\n const dispatch = useDispatch();\r\n const [t, i18n] = useTranslation();\r\n\r\n return (
\r\n \"Success!\"\r\n
{t('Main.Summary.PendingTitle')}
\r\n
\r\n
\r\n\r\n
)\r\n}\r\n\r\n","export const paymentEnum = {\r\n PENDING: 0,\r\n PAID: 1,\r\n ERROR: 2\r\n}","import React, { useEffect } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { useParams } from 'react-router-dom';\r\n\r\nimport allActions from '../../../../../Services/Store/Actions';\r\nimport { actionEnum } from '../../../../../Services/Enums/actionEnum';\r\n\r\nimport Cross from \"../../../../../../img/cross.svg\";\r\nimport Progress from '../../../../../Services/Models/Progress';\r\nimport Loader from '../Loader';\r\nimport { useTranslation } from 'react-i18next';\r\nimport completePurchase from '../../../../../Services/Store/Reducers/_completePurchase';\r\nexport default function ErrorBody() {\r\n const { id } = useParams();\r\n const dispatch = useDispatch();\r\n const [t, i18n] = useTranslation();\r\n\r\n return (
\r\n \"ERROR!\"\r\n
{t('Main.Summary.ErrorTitle')}
\r\n\r\n\r\n
)\r\n\r\n}","import React, { useEffect } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { useParams } from 'react-router-dom';\r\n\r\nimport allActions from '../../../../../Services/Store/Actions';\r\nimport { actionEnum } from '../../../../../Services/Enums/actionEnum';\r\n\r\nimport Check from \"../../../../../../img/check.svg\";\r\nimport Progress from '../../../../../Services/Models/Progress';\r\nimport Loader from '../Loader';\r\nimport { useTranslation } from 'react-i18next';\r\nimport completePurchase from '../../../../../Services/Store/Reducers/_completePurchase';\r\nimport PaidBody from './PaidBody';\r\nimport PendingBody from './PendingBody';\r\nimport { paymentEnum } from '../../../../../Services/Enums/paymentEnum';\r\nimport ErrorBody from './ErrorBody';\r\nexport default function Summary() {\r\n const { id } = useParams();\r\n const dispatch = useDispatch();\r\n const completePurchases = useSelector(state => state.completePurchase);\r\n const settings = useSelector(state => state.propertySettings);\r\n const [t, i18n] = useTranslation();\r\n useEffect(() => {\r\n dispatch(allActions.formActions.setGift(actionEnum.SET_PROGRESS_BAR, new Progress(100, 3)));\r\n if (id !== undefined && completePurchases === null) {\r\n dispatch(allActions.giftActions.completePurchase(id));\r\n }\r\n }, []);\r\n\r\n const renderContent = () => {\r\n \r\n if (completePurchases.status === paymentEnum.PAID)\r\n return ()\r\n\r\n if (completePurchases.status == paymentEnum.PENDING)\r\n return () \r\n\r\n return()\r\n \r\n }\r\n return (\r\n
\r\n {completePurchases !== null ? \r\n renderContent() \r\n : \r\n \r\n }\r\n
\r\n )\r\n}\r\n","import React from 'react';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\nimport { useDispatch } from 'react-redux';\r\nimport allActions from '../../../../../../../Services/Store/Actions';\r\nimport { useTranslation } from 'react-i18next';\r\nexport default function Gift(props) {\r\n const dispatch = useDispatch();\r\n const [t, i18n] = useTranslation();\r\n const decrement = () => {\r\n dispatch(allActions.giftActions.decrementCurrentGift(props.value));\r\n }\r\n\r\n const increment = () => {\r\n dispatch(allActions.giftActions.incrementCurrentGift(props.value));\r\n }\r\n\r\n const remove = () => {\r\n dispatch(allActions.giftActions.removeFromSelectedGifts(props.value));\r\n }\r\n\r\n return (\r\n
\r\n
\r\n \r\n
{props.amount}
\r\n \r\n
\r\n
\r\n {t('Shared.Giftcard')} {props.currency + ' ' + props.value}\r\n
\r\n {props.isLast ? \r\n
\r\n \r\n
: \r\n
\r\n\r\n}\r\n \r\n
\r\n )\r\n}","import React, { useEffect, useState } from 'react'\r\nimport { useSelector, useDispatch } from 'react-redux';\r\nimport { useHistory, useParams } from 'react-router-dom';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\r\n\r\nimport SelectedGift from './SelectedGift/SelectedGift'\r\n\r\nimport { currencyEnum } from '../../../../../../Services/Enums/currencyEnum';\r\nimport allActions from '../../../../../../Services/Store/Actions';\r\nimport { useTranslation } from 'react-i18next';\r\n\r\nexport default function CurrentGift() {\r\n const [isOpen, setIsOpen] = useState(false);\r\n\r\n const currentGifts = useSelector(state => state.currentGifts);\r\n const currentStep = useSelector(state => state.progress.currentStep);\r\n const totalCost = useSelector(state => state.totalCost);\r\n const [t, i18n] = useTranslation();\r\n const history = useHistory();\r\n const dispatch = useDispatch();\r\n\r\n \r\n\r\n const { slug } = useParams();\r\n useEffect(() => {\r\n init();\r\n history.listen(() => {\r\n if (isOpen) closeCustomisation();\r\n });\r\n });\r\n\r\n const init = () => {\r\n dispatch(allActions.giftActions.setTotalGift(currentGifts));\r\n\r\n if (currentGifts.size <= 0) {\r\n history.push(`/${slug}`);\r\n }\r\n } \r\n\r\n const addGift = () => {\r\n toggleCustomisation();\r\n history.push(`/${slug}`);\r\n }\r\n\r\n const toggleCustomisation = () => {\r\n if (isOpen) {\r\n closeCustomisation();\r\n } else {\r\n openCustomisation();\r\n }\r\n }\r\n\r\n const closeCustomisation = () => {\r\n let content = document.getElementById('gift__customisation');\r\n let arrowButton = document.getElementById('action__arrow');\r\n if (content !== null && arrowButton !== null) {\r\n arrowButton.classList.remove('action__arrow--open');\r\n content.style.maxHeight = null;\r\n setIsOpen(false);\r\n }\r\n }\r\n\r\n const openCustomisation = () => {\r\n let content = document.getElementById('gift__customisation');\r\n let arrowButton = document.getElementById('action__arrow');\r\n if (content !== null && arrowButton !== null) {\r\n arrowButton.classList.add('action__arrow--open')\r\n content.style.maxHeight = content.scrollHeight + \"px\";\r\n setIsOpen(true);\r\n }\r\n }\r\n\r\n return (\r\n
\r\n
\r\n
\r\n {t('Main.Data.CurrentGift.YourOrder')} ({currentGifts.size})\r\n
\r\n
\r\n {t('Shared.Total')}: {`${currencyEnum.Euro} ${totalCost}`}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n {(currentGifts.size > 0 &&\r\n
\r\n {\r\n [...currentGifts].map(([key, value]) =>\r\n 1} />\r\n )\r\n }\r\n
\r\n )}\r\n
\r\n {currentStep !== 1 &&\r\n + {t('Main.Data.CurrentGift.AddAnotherGiftcard')}\r\n }\r\n
\r\n
\r\n
\r\n )\r\n}\r\n","import React from 'react';\r\nimport { Switch, Route , Redirect} from 'react-router-dom';\r\n\r\nimport Amount from './1.Amount';\r\nimport Data from './2.Data';\r\nimport Summary from './3.Summary';\r\nimport CurrentGift from './2.Data/CurrentGift';\r\nimport { useSelector } from 'react-redux';\r\nimport { useTranslation } from 'react-i18next';\r\nexport default function Main() {\r\n const currentGifts = useSelector(state => state.currentGifts);\r\n const progress = useSelector(state => state.progress);\r\n const [t, i18n] = useTranslation();\r\n return (\r\n
\r\n {((progress.currentStep === 1 && currentGifts.size > 0) ||\r\n (progress.currentStep !== 1 && progress.currentStep !== 3)) &&\r\n \r\n }\r\n \r\n \r\n (\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n < Data/>\r\n \r\n \r\n \r\n \r\n \r\n
\r\n )\r\n}\r\n","import React from 'react';\r\nimport { useTranslation } from 'react-i18next';\r\nexport default function Footer() {\r\n const [t, i18n] = useTranslation();\r\n\r\n const url = `https://www.younight.com/${i18n.language}`;\r\n const stardekkUrl = `https://www.stardekk.com/${i18n.language}`;\r\n return (\r\n \r\n )\r\n}\r\n\r\n","import React, { useEffect } from 'react';\r\nimport { useSelector } from 'react-redux';\r\n\r\nimport Header from './1.Header';\r\nimport Main from './2.Main';\r\nimport Footer from './3.Footer';\r\nimport Loader from './2.Main/Loader';\r\n\r\nexport default function Form() {\r\n const progress = useSelector(state => state.progress);\r\n const settings = useSelector(state => state.propertySettings);\r\n const loading = useSelector(state => state.loading);\r\n\r\n useEffect(() => {\r\n if (settings.color !== undefined) {\r\n const head = document.getElementsByTagName('head')[0];\r\n let style = document.createElement('STYLE');\r\n style.innerHTML = `\r\n .custom-scrollbar::-webkit-scrollbar-thumb {\r\n background-color: ${settings.color};\r\n }\r\n `.trim();\r\n head.appendChild(style);\r\n }\r\n if (settings.backgroundImg !== undefined) {\r\n document.getElementsByTagName('body')[0].style.background = \"url('\" + settings.backgroundImg + \"') \"; \r\n }\r\n })\r\n\r\n return (\r\n
\r\n {loading ?\r\n
\r\n
\r\n \r\n
\r\n
\r\n :\r\n
\r\n {progress.currentStep !== 3 &&\r\n
\r\n }\r\n
\r\n
\r\n
}\r\n\r\n \r\n
\r\n )\r\n\r\n}","import React from 'react';\r\nimport Footer from './Form/3.Footer/Footer';\r\nexport default function Error() {\r\n window.location.href = \"https://www.younight.com/\";\r\n}","import React from 'react';\r\n\r\nimport Form from './Form';\r\nimport Error from './Error';\r\nimport allActions from '../../Services/Store/Actions';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { useParams } from \"react-router-dom\";\r\nimport { useTranslation } from 'react-i18next';\r\n\r\nexport default function Container() {\r\n //const slug = useSelector(state => state.currentProperty);\r\n let { slug } = useParams();\r\n\r\n \r\n const [t, i18n] = useTranslation();\r\n \r\n const dispatch = useDispatch();\r\n \r\n dispatch(allActions.propertyActions.setCurrentProperty(slug)); \r\n\r\n if (slug) {\r\n dispatch(allActions.propertyActions.getPropertySettings(slug));\r\n dispatch(allActions.giftActions.getGiftcardValues(slug));\r\n\r\n } \r\n\r\n return (\r\n \r\n
\r\n \r\n ) \r\n}","import React from 'react'\r\nimport { useSelector } from 'react-redux';\r\nimport ReactHtmlParser from 'react-html-parser';\r\nimport { useTranslation } from 'react-i18next';\r\nexport default function Modal() {\r\n const settings = useSelector(state => state.propertySettings);\r\n const [t, i18n] = useTranslation();\r\n \r\n\r\n const closeTermsAndConditions = () => {\r\n const backdrop = document.getElementsByClassName('backdrop')[0];\r\n const modal = document.getElementsByClassName('modal')[0];\r\n\r\n if (backdrop.classList.contains('is-blacked-out')) {\r\n backdrop.classList.remove('is-blacked-out');\r\n }\r\n\r\n if (modal.classList.contains('is-active')) {\r\n modal.classList.remove('is-active');\r\n }\r\n }\r\n const renderConditions = () => {\r\n switch (i18n.language) {\r\n case \"nl\":\r\n return ReactHtmlParser(settings.conditions.nl);\r\n case \"fr\": \r\n return ReactHtmlParser(settings.conditions.fr);\r\n default:\r\n return ReactHtmlParser(settings.conditions.en);\r\n }\r\n }\r\n\r\n return (\r\n
\r\n
\r\n

{t('Main.Data.Form.TermsConditions')}

\r\n
\r\n {settings != [] && settings.conditions !== undefined ? \r\n
{renderConditions()}
:
\r\n\r\n }\r\n
\r\n \r\n
\r\n
\r\n )\r\n}\r\n","// This optional code is used to register a service worker.\r\n// register() is not called by default.\r\n\r\n// This lets the app load faster on subsequent visits in production, and gives\r\n// it offline capabilities. However, it also means that developers (and users)\r\n// will only see deployed updates on subsequent visits to a page, after all the\r\n// existing tabs open on the page have been closed, since previously cached\r\n// resources are updated in the background.\r\n\r\n// To learn more about the benefits of this model and instructions on how to\r\n// opt-in, read https://bit.ly/CRA-PWA\r\n\r\nconst isLocalhost = Boolean(\r\n window.location.hostname === 'localhost' ||\r\n // [::1] is the IPv6 localhost address.\r\n window.location.hostname === '[::1]' ||\r\n // 127.0.0.0/8 are considered localhost for IPv4.\r\n window.location.hostname.match(\r\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\r\n )\r\n);\r\n\r\nexport function register(config) {\r\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\r\n // The URL constructor is available in all browsers that support SW.\r\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href);\r\n if (publicUrl.origin !== window.location.origin) {\r\n // Our service worker won't work if PUBLIC_URL is on a different origin\r\n // from what our page is served on. This might happen if a CDN is used to\r\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\r\n return;\r\n }\r\n\r\n window.addEventListener('load', () => {\r\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\r\n\r\n if (isLocalhost) {\r\n // This is running on localhost. Let's check if a service worker still exists or not.\r\n checkValidServiceWorker(swUrl, config);\r\n\r\n // Add some additional logging to localhost, pointing developers to the\r\n // service worker/PWA documentation.\r\n navigator.serviceWorker.ready.then(() => {\r\n console.log(\r\n 'This web app is being served cache-first by a service ' +\r\n 'worker. To learn more, visit https://bit.ly/CRA-PWA'\r\n );\r\n });\r\n } else {\r\n // Is not localhost. Just register service worker\r\n registerValidSW(swUrl, config);\r\n }\r\n });\r\n }\r\n}\r\n\r\nfunction registerValidSW(swUrl, config) {\r\n navigator.serviceWorker\r\n .register(swUrl)\r\n .then(registration => {\r\n registration.onupdatefound = () => {\r\n const installingWorker = registration.installing;\r\n if (installingWorker == null) {\r\n return;\r\n }\r\n installingWorker.onstatechange = () => {\r\n if (installingWorker.state === 'installed') {\r\n if (navigator.serviceWorker.controller) {\r\n // At this point, the updated precached content has been fetched,\r\n // but the previous service worker will still serve the older\r\n // content until all client tabs are closed.\r\n console.log(\r\n 'New content is available and will be used when all ' +\r\n 'tabs for this page are closed. See https://bit.ly/CRA-PWA.'\r\n );\r\n\r\n // Execute callback\r\n if (config && config.onUpdate) {\r\n config.onUpdate(registration);\r\n }\r\n } else {\r\n // At this point, everything has been precached.\r\n // It's the perfect time to display a\r\n // \"Content is cached for offline use.\" message.\r\n console.log('Content is cached for offline use.');\r\n\r\n // Execute callback\r\n if (config && config.onSuccess) {\r\n config.onSuccess(registration);\r\n }\r\n }\r\n }\r\n };\r\n };\r\n })\r\n .catch(error => {\r\n console.error('Error during service worker registration:', error);\r\n });\r\n}\r\n\r\nfunction checkValidServiceWorker(swUrl, config) {\r\n // Check if the service worker can be found. If it can't reload the page.\r\n fetch(swUrl, {\r\n headers: { 'Service-Worker': 'script' }\r\n })\r\n .then(response => {\r\n // Ensure service worker exists, and that we really are getting a JS file.\r\n const contentType = response.headers.get('content-type');\r\n if (\r\n response.status === 404 ||\r\n (contentType != null && contentType.indexOf('javascript') === -1)\r\n ) {\r\n // No service worker found. Probably a different app. Reload the page.\r\n navigator.serviceWorker.ready.then(registration => {\r\n registration.unregister().then(() => {\r\n window.location.reload();\r\n });\r\n });\r\n } else {\r\n // Service worker found. Proceed as normal.\r\n registerValidSW(swUrl, config);\r\n }\r\n })\r\n .catch(() => {\r\n console.log(\r\n 'No internet connection found. App is running in offline mode.'\r\n );\r\n });\r\n}\r\n\r\nexport function unregister() {\r\n if ('serviceWorker' in navigator) {\r\n navigator.serviceWorker.ready.then(registration => {\r\n registration.unregister();\r\n });\r\n }\r\n}\r\n","const availableGifts = (state = [], action) => {\r\n switch(action.type) {\r\n case \"ADD\":\r\n let addArray = state.slice();\r\n addArray.push(action.payload);\r\n return addArray;\r\n default:\r\n return [];\r\n }\r\n}\r\n\r\nexport default availableGifts;","import { actionEnum } from \"../../Enums/actionEnum\";\r\n\r\nconst currentGifts = (state = new Map(), action) => {\r\n let map = new Map(state);\r\n switch(action.type) {\r\n case actionEnum.ADD_TO_CURRENT_GIFTS:\r\n if (map.has(action.payload.value)) {\r\n let value = map.get(action.payload.value);\r\n map.set(action.payload.value, value + 1);\r\n } else {\r\n map.set(action.payload.value, 1);\r\n }\r\n return map;\r\n case actionEnum.DECREMENT_CURRENT_GIFT:\r\n if (map.has(action.payload.value)) {\r\n let value = map.get(action.payload.value);\r\n if (value > 1) map.set(action.payload.value, value - 1)\r\n }\r\n return map;\r\n case actionEnum.INCREMENT_CURRENT_GIFT:\r\n if (map.has(action.payload.value)) {\r\n let value = map.get(action.payload.value);\r\n map.set(action.payload.value, value + 1);\r\n }\r\n return map;\r\n case actionEnum.REMOVE_FROM_CURRENT_GIFTS:\r\n map.delete(action.payload.value);\r\n return map;\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\nexport default currentGifts;","import { actionEnum } from '../../Enums/actionEnum';\r\n\r\nconst currentProperty = (state = \"\", action) => {\r\n switch (action.type) {\r\n case actionEnum.SELECT_CURRENT_PROPERTY: \r\n return action.payload;\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\nexport default currentProperty;","import Company from './Company';\r\nimport Customer from './Customer';\r\nimport Receiver from \"./Receiver\";\r\n\r\nimport { targetEnum } from '../Enums/targetEnum';\r\n\r\nexport default class Gift {\r\n slug= \"\"; \r\n customerName= \"\";\r\n customeFirstName= \"\";\r\n customerEmail= \"\";\r\n customerPhone= \"\";\r\n customerStreet= \"\";\r\n customerNumber= \"\";\r\n customerBox= \"\";\r\n customerPostal= \"\";\r\n customerCity= \"\";\r\n receiverEmail= \"\";\r\n receiverName= \"\";\r\n receiverFirstName= \"\";\r\n receiverMemo= \"\";\r\n values = [];\r\n asksInvoice= false;\r\n companyVAT= \"\";\r\n companyName= \"\";\r\n companyStreet= \"\";\r\n companyNumber= \"\";\r\n companyCity= \"\";\r\n companyPostal= \"\";\r\n companyCountry = \"\";\r\n companyPostal = \"\";\r\n hasReceiver = false;\r\n lang = \"en\"; \r\n target = targetEnum.Myself; \r\n mailtarget = targetEnum.Myself; \r\n acceptTermsAndConditions = false;\r\n message = \"\";\r\n}","import { actionEnum } from '../../Enums/actionEnum';\r\nimport { targetEnum } from '../../Enums/targetEnum';\r\nimport Gift from '../../Models/Gift';\r\n\r\nconst formGift = (state = new Gift(), action) => {\r\n let gift = state;\r\n switch (action.type) {\r\n case actionEnum.SET_COMPANY_ADDRESS_CITY:\r\n gift.companyCity = action.payload.value;\r\n return gift;\r\n case actionEnum.SET_COMPANY_ADDRESS_COUNTRY:\r\n gift.companyCountry = action.payload.value;\r\n return gift;\r\n case actionEnum.SET_COMPANY_ADDRESS_NUMBER:\r\n gift.companyNumber = action.payload.value;\r\n return gift;\r\n case actionEnum.SET_COMPANY_ADDRESS_POSTAL:\r\n gift.companyPostal = action.payload.value;\r\n return gift;\r\n case actionEnum.SET_COMPANY_ADDRESS_STREET:\r\n gift.companyStreet = action.payload.value;\r\n return gift;\r\n case actionEnum.SET_COMPANY_NAME:\r\n gift.companyName = action.payload.value;\r\n return gift;\r\n case actionEnum.SET_COMPANY_VAT:\r\n gift.companyVAT = action.payload.value;\r\n return gift;\r\n case actionEnum.SET_EMAIL:\r\n gift.customerEmail = action.payload.value;\r\n return gift;\r\n case actionEnum.SET_FIRST_NAME:\r\n gift.customeFirstName = action.payload.value;\r\n return gift;\r\n case actionEnum.SET_INVOICE:\r\n gift.asksInvoice = action.payload.value;\r\n return gift;\r\n case actionEnum.SET_LAST_NAME:\r\n gift.customerName = action.payload.value;\r\n return gift;\r\n case actionEnum.SET_TARGET:\r\n gift.target = action.payload.value; \r\n return gift;\r\n case actionEnum.SET_TARGET_MAIL:\r\n gift.mailtarget = action.payload.value;\r\n gift.hasReceiver = gift.mailtarget !== targetEnum.Myself\r\n return gift;\r\n case actionEnum.SET_TARGET_EMAIL:\r\n gift.receiverEmail = action.payload.value;\r\n return gift;\r\n case actionEnum.SET_TARGET_FIRST_NAME:\r\n gift.receiverFirstName = action.payload.value;\r\n return gift;\r\n case actionEnum.SET_TARGET_LAST_NAME:\r\n gift.receiverName = action.payload.value;\r\n return gift;\r\n case actionEnum.SET_TARGET_MESSAGE:\r\n gift.receiverMemo = action.payload.value;\r\n return gift;\r\n case actionEnum.SET_MESSAGE:\r\n gift.message = action.payload.value;\r\n return gift;\r\n case actionEnum.SET_TERMS_AND_CONDITIONS:\r\n gift.acceptTermsAndConditions = action.payload.value;\r\n return gift;\r\n case actionEnum.SET_SLUG:\r\n gift.slug = action.payload.value;\r\n return gift; \r\n case actionEnum.SET_VALUES:\r\n gift.values = action.payload.value;\r\n return gift; \r\n case actionEnum.SET_CUSTOMER_CITY:\r\n gift.customerCity = action.payload.value;\r\n return gift;\r\n case actionEnum.SET_CUSTOMER_PHONE:\r\n gift.customerPhone = action.payload.value;\r\n return gift;\r\n case actionEnum.SET_CUSTOMER_STREET:\r\n gift.customerStreet = action.payload.value;\r\n return gift;\r\n case actionEnum.SET_CUSTOMER_NUMBER:\r\n gift.customerNumber = action.payload.value;\r\n return gift;\r\n case actionEnum.SET_CUSTOMER_POSTAL:\r\n gift.customerPostal = action.payload.value;\r\n return gift;\r\n case actionEnum.SET_LANG:\r\n gift.lang = action.payload.value;\r\n return gift;\r\n default:\r\n return state;\r\n }\r\n} \r\n\r\nexport default formGift;","import { actionEnum } from '../../Enums/actionEnum';\r\n\r\nimport Progress from '../../Models/Progress';\r\n\r\nconst progress = (state = new Progress(7,1), action) => {\r\n let progress = state;\r\n switch (action.type) {\r\n case actionEnum.SET_PROGRESS_BAR:\r\n progress = action.payload.value;\r\n return progress;\r\n case actionEnum.SET_PROGRESS_BAR_WIDTH:\r\n progress.width = action.payload.value;\r\n return progress;\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\nexport default progress;","import { actionEnum } from '../../Enums/actionEnum'\r\n\r\n\r\nconst propertySettings = (state = {}, action) => {\r\n switch (action.type) {\r\n case actionEnum.GET_PROPERTY_SETTINGS: \r\n return action.payload;\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\n\r\n\r\n\r\n\r\nexport default propertySettings;","import { actionEnum } from '../../Enums/actionEnum';\r\n\r\nconst selectedGift = (state = 0, action) => {\r\n switch(action.type) {\r\n case actionEnum.SELECT_FROM_AVAILABLE_GIFTS:;\r\n let value = parseInt(action.payload.value);\r\n return value;\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\nexport default selectedGift;","export const calculateTotalAmount = (map) => {\r\n let total = 0;\r\n [...map].map(([key, value]) => {\r\n let cost = key * value;\r\n total += cost;\r\n });\r\n return total;\r\n}","import { calculateTotalAmount } from '../../Helpers/calculator';\r\n\r\nimport { actionEnum } from '../../Enums/actionEnum';\r\n\r\nconst totalCost = (state = 0, action) => {\r\n let cost = state;\r\n switch (action.type) {\r\n case actionEnum.SET_TOTAL_COST:\r\n if (action.payload.value instanceof Map) {\r\n cost = calculateTotalAmount(action.payload.value);\r\n }\r\n return cost;\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\nexport default totalCost;","import { actionEnum } from '../../Enums/actionEnum'\r\n\r\nconst paymentData = (state = {}, action) => {\r\n switch (action.type) {\r\n case actionEnum.SAVE_TEMP_PURCHASE:\r\n return action.payload;\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\n\r\n\r\nexport default paymentData;","import { actionEnum } from '../../Enums/actionEnum';\r\n\r\nconst loading = (state = true, action) => {\r\n switch (action.type) {\r\n case actionEnum.LOADING:\r\n return action.payload;\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\nexport default loading;","import { combineReducers } from 'redux';\r\n\r\nimport availableGifts from './_availableGifts';\r\nimport currentGifts from './_currentGifts';\r\nimport currentProperty from './_currentProperty';\r\nimport formGift from './_formGift';\r\nimport giftCardValues from './_giftCardValues';\r\nimport progress from './_progress';\r\nimport propertySettings from './_propertySettings';\r\nimport selectedGift from './_selectedGift';\r\nimport totalCost from './_totalCost';\r\nimport paymentData from './_paymentData';\r\nimport completePurchase from './_completePurchase';\r\nimport loading from './_loading';\r\n\r\nconst rootReducer = combineReducers({\r\n availableGifts,\r\n currentGifts,\r\n currentProperty,\r\n formGift,\r\n giftCardValues,\r\n progress,\r\n propertySettings,\r\n selectedGift,\r\n totalCost,\r\n paymentData,\r\n completePurchase,\r\n loading\r\n});\r\n\r\nexport default rootReducer;","import { actionEnum } from '../../Enums/actionEnum'\r\n\r\nexport default (state = [], action) => {\r\n if (action.type === actionEnum.GET_VALUES) {\r\n return action.payload;\r\n }\r\n\r\n return state;\r\n};","import { useDispatch, useSelector } from 'react-redux';\r\nimport giftCardAPI from '../API/giftCardAPI';\r\nconst logger = store => next => action => {\r\n var log = {\r\n action: action.type,\r\n payload: JSON.stringify(action.payload),\r\n path: window.location.pathname\r\n };\r\n \r\n let result = next(action); \r\n\r\n giftCardAPI.post(`/api/Property/Logging`, log).then((response) => {\r\n return result;\r\n }); \r\n \r\n}\r\n\r\nexport default logger","import React, { Suspense } from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport './scss/index.scss';\r\nimport App from './js/App';\r\nimport * as serviceWorker from './serviceWorker';\r\nimport { BrowserRouter as Router } from \"react-router-dom\"\r\n\r\nimport { Provider } from 'react-redux';\r\nimport { createStore, applyMiddleware } from 'redux';\r\nimport rootReducer from './js/Services/Store/Reducers';\r\nimport { composeWithDevTools } from 'redux-devtools-extension';\r\nimport thunk from 'redux-thunk';\r\n\r\nimport { library } from '@fortawesome/fontawesome-svg-core';\r\n\r\nimport { \r\n faTrashAlt as falTrashAlt\r\n} from '@fortawesome/pro-light-svg-icons';\r\n\r\nimport {\r\n faAngleRight as fasAngleRight,\r\n faSortDown as fasSortDown\r\n} from '@fortawesome/pro-solid-svg-icons';\r\n\r\nimport './i18n';\r\n\r\nimport loggerMiddleware from './js/Services/Logging/Logger';\r\n\r\nlibrary.add(\r\n falTrashAlt,\r\n fasAngleRight,\r\n fasSortDown\r\n);\r\n\r\n\r\nconst store = createStore(\r\n rootReducer,\r\n composeWithDevTools(\r\n applyMiddleware(thunk, loggerMiddleware)\r\n )\r\n);\r\n\r\nReactDOM.render(\r\n )}>\r\n \r\n \r\n \r\n ,\r\n \r\n ,\r\n document.getElementById('root')\r\n);\r\n\r\n// If you want your app to work offline and load faster, you can change\r\n// unregister() to register() below. Note this comes with some pitfalls.\r\n// Learn more about service workers: https://bit.ly/CRA-PWA\r\nserviceWorker.unregister();\r\n","import React, { Component } from 'react';\r\nimport './App.scss';\r\nimport {\r\n BrowserRouter as Router,\r\n Switch,\r\n Route, \r\n} from \"react-router-dom\";\r\n\r\nimport Container from './Components/Container';\r\nimport Error from './Components/Container/Error';\r\nimport Modal from './Elements/Modal';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport allActions from './Services/Store/Actions';\r\nexport default function App() {\r\n\r\n const dispatch = useDispatch();\r\n\r\n dispatch(allActions.propertyActions.loading(true)); \r\n\r\n const closeTermsAndConditions = () => {\r\n const backdrop = document.getElementsByClassName('backdrop')[0];\r\n const modal = document.getElementsByClassName('modal')[0];\r\n\r\n if (backdrop.classList.contains('is-blacked-out')) {\r\n backdrop.classList.remove('is-blacked-out');\r\n }\r\n\r\n if (modal.classList.contains('is-active')) {\r\n modal.classList.remove('is-active');\r\n }\r\n }\r\n \r\n return (\r\n \r\n
closeTermsAndConditions()}>
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n )\r\n}\r\n","module.exports = __webpack_public_path__ + \"static/media/check.b60c2086.svg\";","module.exports = __webpack_public_path__ + \"static/media/cross.9d5a4d16.svg\";"],"sourceRoot":""}