{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/common/promotion.js","webpack:///./src/api/order-validator.js","webpack:///./src/common/log.js","webpack:///./src/common/validation-error-handler.js","webpack:///./src/modules/account/routes.js","webpack:///./src/modules/checkout/routes.js","webpack:///./src/modules/hoteldisplay/routes.js","webpack:///./src/routes/adac.js","webpack:///./src/routes/limango.js","webpack:///./src/routes/ooesb.js","webpack:///./src/routes/piratinviaggio.js","webpack:///./src/routes/watitaly.js","webpack:///./src/routes/urlaubsguru.js","webpack:///./src/routes/sbscom.js","webpack:///./src/routes/default.js","webpack:///./src/common/routes-loader.js","webpack:///./src/router.js","webpack:///./src/store/index.js","webpack:///./config/moveen.js","webpack:///./src/locales sync [A-Za-z0-9-_,\\s]+\\.json$/","webpack:///./src/App.vue?27ce","webpack:///./src/components/Navigation.vue?d6c8","webpack:///./src/components/Navigation/_Navigation.vue?6a2f","webpack:///./src/components/MainSearch.vue?7ec1","webpack:///src/components/MainSearch.vue","webpack:///./src/components/MainSearch.vue?4308","webpack:///./src/components/MainSearch.vue","webpack:///src/components/Navigation/_Navigation.vue","webpack:///./src/components/Navigation/_Navigation.vue?4bc1","webpack:///./src/components/Navigation/_Navigation.vue","webpack:///./src/components/Navigation/Adac.vue?b00a","webpack:///src/components/Navigation/Adac.vue","webpack:///./src/components/Navigation/Adac.vue?ed4a","webpack:///./src/components/Navigation/Adac.vue","webpack:///src/components/Navigation.vue","webpack:///./src/components/Navigation.vue?e071","webpack:///./src/components/Navigation.vue","webpack:///./src/components/HeroInfoStandalone.vue?baa2","webpack:///src/components/HeroInfoStandalone.vue","webpack:///./src/components/HeroInfoStandalone.vue?c743","webpack:///./src/components/HeroInfoStandalone.vue","webpack:///src/App.vue","webpack:///./src/App.vue?1160","webpack:///./src/App.vue","webpack:///./src/registerServiceWorker.js","webpack:///./src/api/interceptors.js","webpack:///./src/filters/currency-filter.js","webpack:///./src/filters/iso-country-filter.js","webpack:///./src/filters/theme-filter.js","webpack:///./src/filters/gender-filter.js","webpack:///./src/filters/amount-filter.js","webpack:///./src/filters/capitalize-filter.js","webpack:///./src/filters/remove-special-chars.js","webpack:///./src/filters/promotion-filter.js","webpack:///./src/filters/price-prefix-abbrevation.js","webpack:///./src/api/affiliate-api.js","webpack:///./src/common/awin-plugin/index.js","webpack:///./src/common/adcell-plugin/index.js","webpack:///./src/common/event-dispatcher.js","webpack:///./src/common/google-tag-manager.js","webpack:///./src/common/gtm-subscriber.js","webpack:///./src/common/gtag-subscriber.js","webpack:///./src/common/ga-subscriber.js","webpack:///./src/common/fbpixel-subscriber.js","webpack:///./src/main.js","webpack:///./src/App.vue?c650","webpack:///./src/api/checkout-api.js","webpack:///./src/components/Navigation/Adac.vue?d53c","webpack:///./src/api/offer-api.js","webpack:///./src/api/account-api.js","webpack:///./src/i18n.js","webpack:///./src/components/HeroBadge.vue?2f1e","webpack:///src/components/HeroBadge.vue","webpack:///./src/components/HeroBadge.vue?2241","webpack:///./src/components/HeroBadge.vue","webpack:///./src/api/auth-api.js","webpack:///./src/store.js","webpack:///./src/components/HeroBadge.vue?3872","webpack:///./src/components/Navigation/_Navigation.vue?d0fe","webpack:///./src/components/HeroInfoStandalone.vue?a2f2","webpack:///./src/api/backend.js","webpack:///./src/api/content-api.js","webpack:///./src/components/MainSearch.vue?beaa"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","prefetchChunks","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","deferredPrefetch","apply","shift","deferredModules","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","forEach","undefined","link","document","createElement","nc","setAttribute","rel","as","href","jsonpScriptSrc","head","appendChild","installedModules","installedCssChunks","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","fullhref","existingLinkTags","getElementsByTagName","tag","dataHref","getAttribute","existingStyleTags","linkTag","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","error","clearTimeout","chunk","errorType","realSrc","message","name","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","startupResult","hasActivePromotion","promotionName","obj","promotions","findIndex","f","promotionType","active","getEndDateForPromotion","item","find","to","Date","getEndDateForPromotionOnly","hasAnyPromotion","count","getFirstEnddateOfPromotions","activePromotions","filter","promotion","earliestDate","reduce","prev","curr","hasAnyActivePromotion","validateOrder","a","validateApi","id","localStorage","getItem","invalidOrderHandler","validationResult","stringToDisplay","i18n","itemQuantityChanged","itemSoldOut","reductionInvalidated","Notification","open","duration","position","hasIcon","store","dispatch","createLogger","prefix","timestamp","warn","process","info","debug","print","log","this","handle","response","status","errors","detail","split","map","handled","AccountChildRoutes","path","component","CheckoutChildRoutes","HotelChildRoutes","AdacRoutes","meta","breadcrumb","LimangoRoutes","OoesbRoutes","PiratInViaggioRoutes","WatItalyRoutes","UrlaubsguruRoutes","SbscomRoutes","DefaultRoutes","config","require","shop","whitelabelConfig","short","toLowerCase","getAdditionalRoutes","Vue","use","Router","base","scrollBehavior","from","savedPosition","x","y","routes","alias","children","label","parent","RouterLoader","beforeEnter","next","page","getters","pages","slug","params","pendingContent","accessTokenIndex","referalIndex","logger","analyticsDeactivated","acceptAllCookies","Vuex","Store","state","cart","itemCount","isGuardActive","disableSite","sidebarVisible","invalidPromotion","storeCurrency","isAnalyticsDeactivated","menu","themes","countries","footer","content","pending","home","isoCountries","iso","country","displayReduction","hasActiveReduction","activeReductionName","reductionFx","user","showLoginWindow","accessToken","locale","productsInCart","orderItems","currentOrderId","currentOrderKey","token","cartSubTotal","summary","subtotal","cartShipping","shippingTotal","cartDiscount","discountTotal","cartTotal","total","cartFees","fees","cartPrepaid","prepaid","cartCurrency","currency","cartPaymentType","paymentType","activeReduction","reduction","drawer","displayReductionActive","isGuarded","hasUser","userName","localeIso","toUpperCase","mutations","CART_ITEMS_MODIFIED","payload","PRODUCT_ADDED","product","replacingIndex","quantity","PRODUCT_REMOVED","PRODUCT_UPDATED","CART_UPDATED","PAYMENT_METHOD_UPDATED","paymentMethod","FLASH_MESSAGE_CREATED","_","REDUCTION_INFO_UPDATED","valid","capped","val","org","operation","amount","CART_CLEARED","INVALID_PROMOTION","INVALID_PROMOTION_RESET","SITE_LOCKED","SITE_UNLOCKED","DRAWER_CHANGED","visible","MENU_LOADED","CONTENT_RECEIVED","extensionPoints","footerMenu","title","TOGGLE_GUARD","DEACTIVATE_ANALYTICS","analyticstype","$whitelabel","analyticsType","$gtag","optOut","$ga","disable","tagManager","gtm","enabled","enable","ACTIVATE_ANALYTICS","bootstrap","optIn","fbPixelEnabled","analytics","fbq","init","fbPixelId","ACCESS_TOKEN_UPDATED","jwt","AuthApi","parseJwt","sub","ACCESS_TOKEN_DELETED","TOGGLE_LOGIN_WINDOW","show","LOCALE_CHANGED","PROMOTIONS_RECEIVED","actions","modifyCartProduct","context","modified","commit","added","removed","addProduct","variant","Checkout","createOrderIfNeeded","order","addItem","res","addGiftCard","tan","addGiftCardToOrder","removeGiftCard","removeGiftCardFromOrder","removeProduct","removeItem","changeQuantityOfProduct","changeQuantity","itemId","refreshCart","checkOpenOrder","delegateCustomer","customer","reductionId","refreshPayment","refreshPaymentType","updatePayment","prepareForCheckout","OrderValidator","validForSale","clearCart","updateCart","lockSite","unlockSite","showDrawer","hideDrawer","setGuardActive","unlockGuard","loadMenuEntires","Offer","getMenu","clearInvalidReduction","flashMessageDanger","applyReduction","removeReduction","updateReductionInfo","getReductionInfo","deactivateAnalytics","activateAnalytics","login","usr","pwd","expiresOn","expiry","setSeconds","getSeconds","expiresIn","setItem","JSON","stringify","orderId","updateCurrentOrder","success","logout","resetOrderStorage","router","storeInit","contentApi","getOverview","site","getCurrentPromotions","setReferalToken","stored","referal","parse","newReferal","loadAccesToken","storageToken","refreshToken","refresh","showLogin","passwordForgotten","AccountApi","email","validationError","ValidationErrorHandler","changeLocale","assetUrl","iconUrl","storeName","company","analyticsId","logoHeader","logoFooter","isStandalone","showHeader","showHeaderLogo","showFooterLogo","fixedNavbar","heroTitle","hasHeroSubtitle","heroSubtitle","supportMail","supportPhone","hasHeroAddition","showPromoNotification","showReduction","heroHomeOnly","hasCookieConsent","hasNewsletterOptin","campaignsEnabled","heroImageResolution","xl","width","height","crop","xs","hasOfferCta","hide5sup","heroInfoText","homepage","advantages","styleOverride","webpackContext","req","webpackContextResolve","keys","_vm","_h","$createElement","_c","_self","staticStyle","$route","_e","emptyLayout","class","isDevMode","attrs","directives","rawName","expression","staticClass","scopedSlots","_u","fn","props","_v","_s","$t","on","$event","accept","allowCookies","decline","declineCookies","ref","displayLoading","domProps","snippedData","staticRenderFns","nativeOn","resetSearchAndLoadProducts","handleToggleDrawer","showMobileNav","toggleMobileNav","toggleSubNavItem","_l","resetSearch","$options","filters","removeSpecialChars","hasPromotionDeal","devMode","locales","_g","model","callback","$$v","selectedLocale","set","option","text","isComponentModalActive","closeSearchModal","indexOf","_k","keyCode","submit","searchInput","computed","methods","components","MainSearch","options","selected","$store","$i18n","newValue","innerWidth","el","classList","toggle","openSearchModal","onResize","items","add","remove","beforeDestroy","removeEventListener","location","mounted","addEventListener","Navigation","AdacNavigation","style","poweredByText","HeroBadge","metaInfo","cssProps","backgroundImage","created","CartDisplay","FooterProxy","ScrollToTop","HeroInfoStandalone","CookieLaw","LoginWindow","Drawer","Awin","Adcell","url","origin","logo","drawerWidth","refreshing","cookiesEnabled","beforeCreate","swUpdated","reg","waiting","postMessage","$buefy","toast","reload","handleSlideEnd","mainContent","handleMaskClick","$gtm","htmlAttrs","lang","titleTemplate","register","ready","registered","registration","RUNNING_VERSION","setInterval","update","cached","updatefound","updated","dispatchEvent","CustomEvent","offline","setup","errorResponseHandler","originalRequest","isRetry","_retry","Toast","responseURL","includes","variantId","extensions","errorCode","_reject","unsubscribe","subscribe","mutation","headers","Authorization","axios","interceptors","_silent","startsWith","getDomain","expiryDate","setMinutes","getMinutes","toString","parseFloat","isNaN","toFixed","replace","charAt","trim","cdDate","dealEndtime","affiliateSummary","aff","getTime","awinScript","awinId","awinObject","loadScript","defer","async","rerunScript","internal","Tracking","run","sendUsingImgFallback","awinFallbackImg","border","body","mapProducts","products","price","identifier","unitPrice","knownVars","redeclare","vars","known","v","awinOperations","awin","setConversionTag","cartId","Api","summaryData","parts","usedReduction","Sale","channel","orderRef","test","setConfirmation","zxParams","pagetype","language","transaction","total_amount","total_currency","setCart","setHome","setSearch","query","search_query","setOffer","template","minPriceVariant","variants","subtitle","description","category","image1","image","install","windowObject","AWIN","$awin","adcellScript","adcellObject","adcellFallbackImg","adcellOperations","adcell","adcellConversion","pid","eventid","track","$adcell","EventTypes","freeze","STORE","ROUTE","MANUAL","StoreEvents","SEARCH_PRODUCTS_UPDATED","HOTEL_OFFER_LOADED","CHECKOUT_PAYMENT_STARTED","CHECKOUT_USER_DATA_UPDATED","CHECKOUT_ORDER_CLOSED","CHECKOUT_PAYMENT_SESSION_UPDATED","ManualEvents","CLICKED","dispatcher","subscribers","storeUnsubscriber","routeUnsubscriber","action","st","afterEach","destroy","_register","subscriber","$type","String","Array","isArray","storeEventLister","ev","routeEventListener","manualEventListener","getNights","nights","min","max","getPersons","persons","getProductList","brand","productList","gtmItems","display","list","item_name","item_id","item_list_name","item_brand","item_variant","item_category","index","getProduct","getProductView","getCartList","cartList","parameter","item_description","getPurchasedList","purchasedList","item_price","item_quantity","createGTMListeners","trackEvent","pageCategory","visitorType","ecommerce","currencyCode","impressions","GtmHelper","click","actionField","offer","cartItem","cartItems","checkout","purchase","revenue","transaction_id","createGTAGListeners","gtag","results","searchItems","element","contact","vendor","list_name","list_position","event_category","event_label","content_type","purchasedItems","createGAListeners","ga","addImpression","setAction","send","createFBPListeners","fbp","Sentry","dsn","VUE_APP_SENTRY_DSN","integrations","Integrations","BrowserTracing","tracesSampleRate","VUE_APP_SENTRY_SAMPLERATE","environment","logErrors","tracingOptions","trackComponents","setDomain","setShopCurrency","productionTip","Buefy","defaultIconPack","defaultTooltipAnimated","defaultDayNames","defaultMonthNames","defaultFirstDayOfWeek","VueGoogleMaps","load","VueContentPlaceholders","VueGtag","anonymize_ip","VueAnalytics","analyticsId_ua","enhanced","disabled","beforeFirstHit","trace","sendHitTask","VueGtm","VueMeta","refreshOnceOnNavigation","b","callMethod","arguments","queue","_fbq","loaded","version","insertBefore","VueFacebookPixel","VueFilterDateFormat","extend","required","values","numeric","oneOf","confirmed","validate","match","VueScrollTo","container","easing","offset","force","cancelable","onStart","onDone","onCancel","vueDebounce","VueObserveVisibility","VueLazyload","ValidationProvider","ValidationObserver","documentElement","querySelector","$promotions","anyActiveFor","getMinStartFor","getMaxEndFor","getOfferCountFor","render","h","App","destroyed","urlParams","URLSearchParams","search","has","hostname","pathname","referer","gtmSubscribers","gtagSubscribers","gaSubscribers","fbpSubscribers","$eventDispatcher","$mount","defaultCurrency","createOrder","oc","cmd","closeOrder","close","or","metaData","Order_MetaData","refPath","refPayload","refUsed","oac","oar","oca","updateUserData","userData","tmp","uc","setWireTransfer","pd","retriveSelectedPayment","completePayPalTransaction","paypalOrderId","pp","payPalOrderId","remReduction","reductionInfo","prepare","createAmazonCheckoutSession","amaCheckout","authorizeAmazonCheckoutSession","session","amaAuth","amazonCheckoutSessionId","createAmazonPayRedirect","amaRedirect","completeAmazonPayPayment","amaComplete","setOptinOptions","phone","newsletter","optinOptions","optinEmail","optinPhone","optinNewsletter","getOrderNotifications","notifications","claimOrder","claim","getOffer","os","getOfferByVariantId","obyv","getOfferForContact","pageSize","getOfferBySlug","offerBySlug","getOffersWithDealPromotion","deals","getOffersWithCustomPromotion","prom","getOfferData","offerData","$config","texts","sort","getThemesForMenu","getCountriesForMenu","getOrderForUser","orderForUser","updateUser","userdata","getUser","changeUserPassword","oldpwd","newpwd","changePw","oldPassword","newPassword","resetPassword","reset","forgotten","loadLocaleMessages","messages","matched","VueI18n","fallbackLocale","heroBadge","extUrl","logIn","password","withCredentials","registerCustomerUser","base64Url","base64","jsonPayload","decodeURIComponent","atob","charCodeAt","join","domain","$domain","method","queryParameters","form","queryUrl","qs","Account_Register","parameters","$queryParameters","parameterName","Account_PasswordForgotten","Account_PasswordForgotten2","Account_ChangePassword","Account_GetUserData","Account_UpdateUserData","Auth_Login","Auth_Refresh","Guard_VerifyAlphaNumericGuard","Hotel_CloseTo","Hotel_List","Hotel_Hotel","Insurance_BookInsurance","Invoice_DownloadInvoiceURL","encodeURIComponent","Offer_Offer","Offer_OfferByVariantId","Offer_OfferBySlug","Offer_OfferByContactSlug","Offer_OfferData","Offer_Search","Offer_TravelDeals","Offer_Promotions","Offer_Promotion","Offer_Suggest","Offer_GetAvailableThemes","Offer_GetAvailableCountries","Offer_OfferGroups","Order_Retrive","Order_SelectedPayment","Order_Validate","Order_PrepareForCheckout","Order_OrderNotifications","Order_Create","Order_AddArticle","Order_ChangeArticle","Order_RemoveArticle","Order_AddGiftCard","Order_RemoveGiftCard","Order_SetOrderToWireTransfer","Order_UpdateCustomer","Order_AddReduction","Order_RemoveReduction","Order_PayPalCreateOrder","Order_PayPalTransactionComplete","Order_CloseOrder","Order_OptinOptions","Order_Reduction","Order_ClaimOrder","Order_ClosedOrdersForUser","Order_AmazonPayCreateCheckoutSession","Order_AmazonPayProcessCheckoutSession","Order_AmazonPayCreateRedirect","Order_AmazonPayCompletePayment","Voucher_RetriveVoucherCustomer","Voucher_UpdateVoucherCustomer","Voucher_DownloadVoucherURL","Order_AffiliateSummary","responseType","resp"],"mappings":"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","file":"js/app.c5b1eab9.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n \t\tvar prefetchChunks = data[3] || [];\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n \t\tdeferredPrefetch.push.apply(deferredPrefetch, prefetchChunks);\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n \t\tif(deferredModules.length === 0) {\n \t\t\t// chunk prefetching for javascript\n \t\t\tdeferredPrefetch.forEach(function(chunkId) {\n \t\t\t\tif(installedChunks[chunkId] === undefined) {\n \t\t\t\t\tinstalledChunks[chunkId] = null;\n \t\t\t\t\tvar link = document.createElement('link');\n\n \t\t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\t\tlink.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t\t}\n \t\t\t\t\tlink.rel = \"prefetch\";\n \t\t\t\t\tlink.as = \"script\";\n \t\t\t\t\tlink.href = jsonpScriptSrc(chunkId);\n \t\t\t\t\tdocument.head.appendChild(link);\n \t\t\t\t}\n \t\t\t});\n \t\t\tdeferredPrefetch.length = 0;\n \t\t}\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [], deferredPrefetch = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"js/\" + ({\"account\":\"account\",\"adcell\":\"adcell\",\"awin\":\"awin\",\"cartdisplay\":\"cartdisplay\",\"checkout~home~lp-adac~lp-blackfriday~lp-limango~lp-ooesb~lp-piratinviaggio~lp-urlaubsguru~lp-valenti~c8ca36e9\":\"checkout~home~lp-adac~lp-blackfriday~lp-limango~lp-ooesb~lp-piratinviaggio~lp-urlaubsguru~lp-valenti~c8ca36e9\",\"checkout\":\"checkout\",\"home~hotel~lp-adac~lp-blackfriday~lp-limango~lp-ooesb~lp-piratinviaggio~lp-urlaubsguru~lp-valentine~~7cf5c8b6\":\"home~hotel~lp-adac~lp-blackfriday~lp-limango~lp-ooesb~lp-piratinviaggio~lp-urlaubsguru~lp-valentine~~7cf5c8b6\",\"home~lp-limango~lp-ooesb~lp-piratinviaggio~lp-urlaubsguru~lp-watitaly~start\":\"home~lp-limango~lp-ooesb~lp-piratinviaggio~lp-urlaubsguru~lp-watitaly~start\",\"home~start\":\"home~start\",\"home\":\"home\",\"start\":\"start\",\"lp-limango\":\"lp-limango\",\"lp-ooesb\":\"lp-ooesb\",\"lp-piratinviaggio\":\"lp-piratinviaggio\",\"lp-urlaubsguru\":\"lp-urlaubsguru\",\"lp-watitaly\":\"lp-watitaly\",\"lp-adac\":\"lp-adac\",\"lp-blackfriday\":\"lp-blackfriday\",\"lp-valentine\":\"lp-valentine\",\"drawer\":\"drawer\",\"footer\":\"footer\",\"hotel~static\":\"hotel~static\",\"hotel\":\"hotel\",\"static\":\"static\",\"loginwindow\":\"loginwindow\",\"order\":\"order\",\"pagenotfound\":\"pagenotfound\",\"scrolltotop\":\"scrolltotop\",\"blackfriday\":\"blackfriday\",\"christmas\":\"christmas\",\"easter\":\"easter\",\"italia\":\"italia\",\"italy\":\"italy\",\"mothersday\":\"mothersday\",\"summersale\":\"summersale\",\"valentine\":\"valentine\",\"nooffer\":\"nooffer\",\"offerblock\":\"offerblock\",\"banners\":\"banners\",\"googlemaps\":\"googlemaps\",\"membershipmodal\":\"membershipmodal\",\"richsnippet\":\"richsnippet\",\"slider\":\"slider\"}[chunkId]||chunkId) + \".\" + {\"account\":\"f6d6b6a9\",\"adcell\":\"d9489dfd\",\"awin\":\"baa9e6ee\",\"cartdisplay\":\"554a0ed0\",\"checkout~home~lp-adac~lp-blackfriday~lp-limango~lp-ooesb~lp-piratinviaggio~lp-urlaubsguru~lp-valenti~c8ca36e9\":\"ea10baf2\",\"checkout\":\"0e8993e1\",\"home~hotel~lp-adac~lp-blackfriday~lp-limango~lp-ooesb~lp-piratinviaggio~lp-urlaubsguru~lp-valentine~~7cf5c8b6\":\"147e6051\",\"home~lp-limango~lp-ooesb~lp-piratinviaggio~lp-urlaubsguru~lp-watitaly~start\":\"53f30da2\",\"home~start\":\"34ac4421\",\"home\":\"97798e58\",\"start\":\"5dadc5bc\",\"lp-limango\":\"065cca45\",\"lp-ooesb\":\"9b714e25\",\"lp-piratinviaggio\":\"e82ef1ca\",\"lp-urlaubsguru\":\"506cb88d\",\"lp-watitaly\":\"cf482394\",\"lp-adac\":\"c21b0efd\",\"lp-blackfriday\":\"83f6a804\",\"lp-valentine\":\"7a0456be\",\"chunk-76e9126d\":\"7e30047c\",\"drawer\":\"97347604\",\"footer\":\"e303f0b4\",\"hotel~static\":\"08c3bf89\",\"hotel\":\"32d64922\",\"static\":\"e254a445\",\"loginwindow\":\"334da319\",\"order\":\"7c11ac4f\",\"pagenotfound\":\"5709e181\",\"scrolltotop\":\"77b559cf\",\"blackfriday\":\"350f45ef\",\"christmas\":\"5beb9fc2\",\"easter\":\"4d96fc3f\",\"italia\":\"6ffbf2a0\",\"italy\":\"d36caa8d\",\"mothersday\":\"7f48eea7\",\"summersale\":\"9ab7a4b4\",\"valentine\":\"426188fa\",\"nooffer\":\"c3348724\",\"offerblock\":\"14b235bc\",\"banners\":\"f3778d67\",\"googlemaps\":\"a2cc0731\",\"membershipmodal\":\"9adbc719\",\"richsnippet\":\"e88935cb\",\"slider\":\"cccfa809\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"account\":1,\"cartdisplay\":1,\"checkout\":1,\"home~hotel~lp-adac~lp-blackfriday~lp-limango~lp-ooesb~lp-piratinviaggio~lp-urlaubsguru~lp-valentine~~7cf5c8b6\":1,\"home~lp-limango~lp-ooesb~lp-piratinviaggio~lp-urlaubsguru~lp-watitaly~start\":1,\"home~start\":1,\"start\":1,\"lp-limango\":1,\"lp-piratinviaggio\":1,\"lp-urlaubsguru\":1,\"lp-watitaly\":1,\"lp-adac\":1,\"lp-blackfriday\":1,\"lp-valentine\":1,\"chunk-76e9126d\":1,\"drawer\":1,\"footer\":1,\"hotel\":1,\"loginwindow\":1,\"order\":1,\"pagenotfound\":1,\"scrolltotop\":1,\"blackfriday\":1,\"christmas\":1,\"easter\":1,\"italia\":1,\"italy\":1,\"mothersday\":1,\"summersale\":1,\"valentine\":1,\"offerblock\":1,\"banners\":1,\"membershipmodal\":1,\"slider\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"css/\" + ({\"account\":\"account\",\"adcell\":\"adcell\",\"awin\":\"awin\",\"cartdisplay\":\"cartdisplay\",\"checkout~home~lp-adac~lp-blackfriday~lp-limango~lp-ooesb~lp-piratinviaggio~lp-urlaubsguru~lp-valenti~c8ca36e9\":\"checkout~home~lp-adac~lp-blackfriday~lp-limango~lp-ooesb~lp-piratinviaggio~lp-urlaubsguru~lp-valenti~c8ca36e9\",\"checkout\":\"checkout\",\"home~hotel~lp-adac~lp-blackfriday~lp-limango~lp-ooesb~lp-piratinviaggio~lp-urlaubsguru~lp-valentine~~7cf5c8b6\":\"home~hotel~lp-adac~lp-blackfriday~lp-limango~lp-ooesb~lp-piratinviaggio~lp-urlaubsguru~lp-valentine~~7cf5c8b6\",\"home~lp-limango~lp-ooesb~lp-piratinviaggio~lp-urlaubsguru~lp-watitaly~start\":\"home~lp-limango~lp-ooesb~lp-piratinviaggio~lp-urlaubsguru~lp-watitaly~start\",\"home~start\":\"home~start\",\"home\":\"home\",\"start\":\"start\",\"lp-limango\":\"lp-limango\",\"lp-ooesb\":\"lp-ooesb\",\"lp-piratinviaggio\":\"lp-piratinviaggio\",\"lp-urlaubsguru\":\"lp-urlaubsguru\",\"lp-watitaly\":\"lp-watitaly\",\"lp-adac\":\"lp-adac\",\"lp-blackfriday\":\"lp-blackfriday\",\"lp-valentine\":\"lp-valentine\",\"drawer\":\"drawer\",\"footer\":\"footer\",\"hotel~static\":\"hotel~static\",\"hotel\":\"hotel\",\"static\":\"static\",\"loginwindow\":\"loginwindow\",\"order\":\"order\",\"pagenotfound\":\"pagenotfound\",\"scrolltotop\":\"scrolltotop\",\"blackfriday\":\"blackfriday\",\"christmas\":\"christmas\",\"easter\":\"easter\",\"italia\":\"italia\",\"italy\":\"italy\",\"mothersday\":\"mothersday\",\"summersale\":\"summersale\",\"valentine\":\"valentine\",\"nooffer\":\"nooffer\",\"offerblock\":\"offerblock\",\"banners\":\"banners\",\"googlemaps\":\"googlemaps\",\"membershipmodal\":\"membershipmodal\",\"richsnippet\":\"richsnippet\",\"slider\":\"slider\"}[chunkId]||chunkId) + \".\" + {\"account\":\"659cd54e\",\"adcell\":\"31d6cfe0\",\"awin\":\"31d6cfe0\",\"cartdisplay\":\"5056458b\",\"checkout~home~lp-adac~lp-blackfriday~lp-limango~lp-ooesb~lp-piratinviaggio~lp-urlaubsguru~lp-valenti~c8ca36e9\":\"31d6cfe0\",\"checkout\":\"eeed09d2\",\"home~hotel~lp-adac~lp-blackfriday~lp-limango~lp-ooesb~lp-piratinviaggio~lp-urlaubsguru~lp-valentine~~7cf5c8b6\":\"90707b7c\",\"home~lp-limango~lp-ooesb~lp-piratinviaggio~lp-urlaubsguru~lp-watitaly~start\":\"1bf04e00\",\"home~start\":\"6bb06870\",\"home\":\"31d6cfe0\",\"start\":\"9dd16785\",\"lp-limango\":\"bd621a9e\",\"lp-ooesb\":\"31d6cfe0\",\"lp-piratinviaggio\":\"bd621a9e\",\"lp-urlaubsguru\":\"b7b62d9d\",\"lp-watitaly\":\"bd621a9e\",\"lp-adac\":\"ab702cbf\",\"lp-blackfriday\":\"22671977\",\"lp-valentine\":\"d72c5421\",\"chunk-76e9126d\":\"58ca1fd3\",\"drawer\":\"b57d681f\",\"footer\":\"8e663963\",\"hotel~static\":\"31d6cfe0\",\"hotel\":\"2573b925\",\"static\":\"31d6cfe0\",\"loginwindow\":\"3f7c1aad\",\"order\":\"b84b6480\",\"pagenotfound\":\"f7ab759e\",\"scrolltotop\":\"fa745412\",\"blackfriday\":\"e481c241\",\"christmas\":\"2ca23725\",\"easter\":\"82e82f14\",\"italia\":\"c8eaaa4f\",\"italy\":\"714d8468\",\"mothersday\":\"96b0c10c\",\"summersale\":\"11fbf417\",\"valentine\":\"35d20dfd\",\"nooffer\":\"31d6cfe0\",\"offerblock\":\"4bcc5323\",\"banners\":\"76e1b5db\",\"googlemaps\":\"31d6cfe0\",\"membershipmodal\":\"e0b556a4\",\"richsnippet\":\"31d6cfe0\",\"slider\":\"45583cf6\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \tvar startupResult = (function() {\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n \t})();\n\n \twebpackJsonpCallback([[], {}, 0, [\"chunk-76e9126d\"]]);\n \treturn startupResult;\n","const hasActivePromotion = (promotionName, obj) => {\r\n if (obj && obj.promotions && obj.promotions.length > 0) {\r\n return (\r\n obj.promotions.findIndex(\r\n f => f.promotionType == promotionName && f.active,\r\n ) > -1\r\n )\r\n }\r\n return false\r\n}\r\n\r\nconst getEndDateForPromotion = (promotionName, obj) => {\r\n if (obj && obj.promotions && obj.promotions.length > 0) {\r\n const item = obj.promotions.find(\r\n f => f.promotionType == promotionName && f.active && f.to,\r\n )\r\n if (item) {\r\n return new Date(item.to)\r\n }\r\n }\r\n return null\r\n}\r\n\r\nconst getEndDateForPromotionOnly = (promotionName, promotions) => {\r\n if (promotions && promotions.length > 0) {\r\n const item = promotions.find(f => f.type == promotionName)\r\n if (item) {\r\n return new Date(item.to)\r\n }\r\n }\r\n return null\r\n}\r\n\r\nconst hasAnyPromotion = obj => {\r\n return obj.promotions.length > 0\r\n}\r\n\r\nconst count = obj => {\r\n return obj.promotions.length\r\n}\r\n\r\nconst getFirstEnddateOfPromotions = promotions => {\r\n let activePromotions = promotions.filter(promotion => {\r\n return promotion.active\r\n })\r\n\r\n if (activePromotions.length > 0) {\r\n let earliestDate = activePromotions.reduce(function(prev, curr) {\r\n return prev.to < curr.to ? prev : curr\r\n })\r\n\r\n return new Date(earliestDate.to)\r\n } else {\r\n return false\r\n }\r\n}\r\n\r\nconst hasAnyActivePromotion = promotions => {\r\n let activePromotions = promotions.filter(promotion => {\r\n return promotion.active\r\n })\r\n\r\n return activePromotions.length > 0\r\n}\r\n\r\nexport default {\r\n hasActivePromotion,\r\n getEndDateForPromotion,\r\n getEndDateForPromotionOnly,\r\n hasAnyPromotion,\r\n hasAnyActivePromotion,\r\n count,\r\n getFirstEnddateOfPromotions,\r\n}\r\n","import {\r\n Order_Validate as validateApi\r\n} from \"./backend\"\r\nimport { NotificationProgrammatic as Notification } from 'buefy'\r\nimport store from '@/store/index'\r\nimport i18n from '@/i18n'\r\nconst validateOrder = async () => {\r\n let { data } = await validateApi({\r\n\r\n id: localStorage.getItem('CURRENT_ID'),\r\n key: localStorage.getItem('TOKEN')\r\n \r\n });\r\n return data;\r\n};\r\n\r\nconst invalidOrderHandler = (validationResult) => {\r\n let stringToDisplay = i18n.t('errors.order-errors.order-adjusted');\r\n if (validationResult.itemQuantityChanged) {\r\n stringToDisplay += i18n.t('errors.order-errors.quantity-adjusted');\r\n }\r\n if (validationResult.itemSoldOut) {\r\n stringToDisplay += i18n.t('errors.order-errors.article-removed');\r\n }\r\n if (validationResult.reductionInvalidated) {\r\n stringToDisplay += i18n.t('errors.order-errors.code-not-valid');\r\n }\r\n stringToDisplay += i18n.t('general.check-order');\r\n Notification.open({\r\n duration: 5000,\r\n message: stringToDisplay,\r\n position: 'is-bottom-right',\r\n type: 'is-danger',\r\n hasIcon: true\r\n });\r\n store.dispatch('refreshCart');\r\n}\r\n\r\nexport default {\r\n validateOrder,\r\n invalidOrderHandler\r\n}","const format = (message, prefix, name, timestamp) => {\n let msg = ''\n if (prefix) {\n msg = `${prefix} `\n }\n if (timestamp) {\n msg += `${new Date().toLocaleDateString('de-de', { year:\"numeric\", month:\"numeric\", day:\"numeric\", hour: \"2-digit\", minute:\"2-digit\", second: \"2-digit\"}) } `\n }\n if (name) {\n msg += `[${name}] `\n }\n return `${msg}${message}`\n}\n\nconst createLogger = (name, prefix, timestamp) => {\n return {\n warn(message, data) {\n if (process.env.NODE_ENV !== 'production') {\n if(data !== undefined){\n console.warn(format(message, prefix, name, timestamp), data)\n }else {\n console.warn(format(message, prefix, name, timestamp))\n }\n }\n },\n info(message, data) {\n if (process.env.NODE_ENV !== 'production') {\n if(data !== undefined){\n console.info(format(message, prefix, name, timestamp), data)\n }else {\n console.info(format(message, prefix, name, timestamp))\n }\n }\n },\n error(message, data) {\n if (process.env.NODE_ENV !== 'production') {\n if(data !== undefined){\n console.error(format(message, prefix, name, timestamp), data)\n }else {\n console.error(format(message, prefix, name, timestamp))\n }\n }\n },\n debug(message, data) {\n if (process.env.NODE_ENV !== 'production') {\n if(data !== undefined){\n console.debug(format(message, prefix, name, timestamp), data)\n }else {\n console.debug(format(message, prefix, name, timestamp))\n }\n }\n },\n print(message, data) {\n if (process.env.NODE_ENV !== 'production') {\n if(data !== undefined){\n console.log(format(message, prefix, name, timestamp), data)\n }else {\n console.log(format(message, prefix, name, timestamp))\n }\n }\n },\n log(message, data) {\n this.print(message, data)\n }\n }\n}\n\nconst log = createLogger('', '', false)\n\nexport {createLogger, log}\n","\n\nconst handle = (e) => {\n if (e && e.response && e.response.data && e.response.data.status == 400 && e.response.data.type === \"https://touristik-vertrieb.at/validation-error\") {\n let errors = e.response.data.detail.split(';')\n .map(m => { return { key: \"validation-error\", value: m } });\n return { handled: true, errors: errors };\n }\n return { handled: false };\n}\n\n\nexport default {\n handle\n}","export const AccountChildRoutes = [\n {\n path: 'orders',\n name: 'userorders',\n component: () =>\n import(/* webpackChunkName: \"account\" */ '@/modules/account/_components/UserOrdersView.vue'),\n },\n {\n name: 'user-change-password',\n path: 'change-password',\n component: () =>\n import(/* webpackChunkName: \"account\" */ '@/modules/account/_components/ChangePasswordView.vue'),\n },\n {\n name: 'user-edit-data',\n path: 'edit',\n component: () =>\n import(/* webpackChunkName: \"account\" */ '@/modules/account/_components/ChangeUserDataView.vue'),\n },\n]\n","export const CheckoutChildRoutes =\n [\n {\n path: '/',\n name: 'checkout',\n component: () =>\n import(/* webpackChunkName: \"checkout\" */ '@/modules/checkout/_components/CheckoutProcess.vue'),\n },\n {\n name: 'authorize',\n path: 'authorize',\n component: () =>\n import(/* webpackChunkName: \"checkout\" */ '@/modules/checkout/_components/AuthorizingPayment.vue'),\n }\n ];","export const HotelChildRoutes = [\r\n {\r\n path: ':contact/:slug',\r\n name: 'urlaub',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"hotel\" */ '@/modules/hoteldisplay/_views/Offer.vue'\r\n ),\r\n },\r\n {\r\n path: 'karte',\r\n name: 'hotel-map',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"hotel\" */ '@/modules/hoteldisplay/_views/Map.vue'\r\n ),\r\n },\r\n {\r\n path: ':contact',\r\n name: 'hotel-overview',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"hotel\" */ '@/modules/hoteldisplay/_views/Hotel.vue'\r\n ),\r\n },\r\n]\r\n","export const AdacRoutes = [\r\n {\r\n path: '/blackfriday',\r\n name: 'blackfriday',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"lp-blackfriday\" */ /* webpackPreload: true */ '../views/Landingpages/Adac/BlackFriday.vue'\r\n ),\r\n meta: {\r\n breadcrumb: 'Black Friday',\r\n },\r\n },\r\n {\r\n path: '/valentinstag',\r\n name: 'valentine',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"lp-valentine\" */ /* webpackPreload: true */ '../views/Landingpages/Adac/Valentine.vue'\r\n ),\r\n\r\n meta: {\r\n breadcrumb: 'Valentinstag',\r\n },\r\n },\r\n {\r\n path: '/ostern',\r\n name: 'easter',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"lp-adac\" */ /* webpackPreload: true */ '../views/Landingpages/Adac/Easter.vue'\r\n ),\r\n\r\n meta: {\r\n breadcrumb: 'Ostern',\r\n },\r\n },\r\n {\r\n path: '/muttertag',\r\n name: 'mothersday',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"lp-adac\" */ /* webpackPreload: true */ '../views/Landingpages/Adac/MothersDay.vue'\r\n ),\r\n\r\n meta: {\r\n breadcrumb: 'Muttertag',\r\n },\r\n },\r\n {\r\n path: '/ssv',\r\n name: 'ssv',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"lp-adac\" */ /* webpackPreload: true */ '../views/Landingpages/Adac/SummerSale.vue'\r\n ),\r\n\r\n meta: {\r\n breadcrumb: 'SSV',\r\n },\r\n },\r\n {\r\n path: '/motorwelt',\r\n name: 'motorwelt',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"lp-adac\" */ /* webpackPreload: true */ '../views/Landingpages/Adac/Motorwelt.vue'\r\n ),\r\n\r\n meta: {\r\n breadcrumb: 'Motorwelt',\r\n },\r\n },\r\n {\r\n path: '/weihnachten',\r\n name: 'christmas',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"lp-adac\" */ /* webpackPreload: true */ '../views/Landingpages/Adac/Christmas.vue'\r\n ),\r\n meta: {\r\n breadcrumb: 'Weihnachten',\r\n },\r\n },\r\n]\r\n","export const LimangoRoutes = [\r\n {\r\n path: '/suedtirol',\r\n name: 'suedtirol',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"lp-limango\" */ /* webpackPreload: true */ '../views/Landingpages/Limango/Suedtirol.vue'\r\n ),\r\n meta: {\r\n breadcrumb: 'Südtirol',\r\n },\r\n },\r\n {\r\n path: '/deutschland',\r\n name: 'germany',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"lp-limango\" */ /* webpackPreload: true */ '../views/Landingpages/Limango/Germany.vue'\r\n ),\r\n meta: {\r\n breadcrumb: 'Deutschland',\r\n },\r\n },\r\n {\r\n path: '/gardasee',\r\n name: 'gardasee',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"lp-limango\" */ /* webpackPreload: true */ '../views/Landingpages/Limango/Gardasee.vue'\r\n ),\r\n meta: {\r\n breadcrumb: 'Gardasee',\r\n },\r\n },\r\n {\r\n path: '/chalet',\r\n name: 'chalet',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"lp-limango\" */ /* webpackPreload: true */ '../views/Landingpages/Limango/Chalet.vue'\r\n ),\r\n meta: {\r\n breadcrumb: 'Chalet',\r\n },\r\n },\r\n {\r\n path: '/city',\r\n name: 'city',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"lp-limango\" */ /* webpackPreload: true */ '../views/Landingpages/Limango/City.vue'\r\n ),\r\n meta: {\r\n breadcrumb: 'City',\r\n },\r\n },\r\n {\r\n path: '/wellness',\r\n name: 'wellness',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"lp-limango\" */ /* webpackPreload: true */ '../views/Landingpages/Limango/Wellness.vue'\r\n ),\r\n meta: {\r\n breadcrumb: 'Wellness',\r\n },\r\n },\r\n {\r\n path: '/wien',\r\n name: 'vienna',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"lp-limango\" */ /* webpackPreload: true */ '../views/Landingpages/Limango/Vienna.vue'\r\n ),\r\n meta: {\r\n breadcrumb: 'Wien',\r\n },\r\n },\r\n {\r\n path: '/replerhof',\r\n name: 'replerhof',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"lp-limango\" */ /* webpackPreload: true */ '../views/Landingpages/Limango/Replerhof.vue'\r\n ),\r\n meta: {\r\n breadcrumb: 'Replerhof',\r\n },\r\n },\r\n]\r\n","export const OoesbRoutes = [\r\n {\r\n path: '/schnaeppchen',\r\n name: 'bargain',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"lp-ooesb\" */ /* webpackPreload: true */ '../views/Landingpages/Ooesb/Bargain.vue'\r\n ),\r\n meta: {\r\n breadcrumb: 'Deutschland',\r\n },\r\n },\r\n]\r\n","export const PiratInViaggioRoutes = [\r\n {\r\n path: '/italia',\r\n name: 'italia',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"lp-piratinviaggio\" */ /* webpackPreload: true */ '../views/Landingpages/PiratInViaggio/Italia.vue'\r\n ),\r\n meta: {\r\n breadcrumb: 'Italia',\r\n },\r\n },\r\n]\r\n","export const WatItalyRoutes = [\r\n {\r\n path: '/italia',\r\n name: 'italia',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"lp-watitaly\" */ /* webpackPreload: true */ '../views/Landingpages/WatItaly/Italia.vue'\r\n ),\r\n meta: {\r\n breadcrumb: 'Italia',\r\n },\r\n },\r\n]\r\n","export const UrlaubsguruRoutes = [\r\n {\r\n path: '/deals',\r\n name: 'Deals',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"lp-urlaubsguru\" */ /* webpackPreload: true */ '../views/Landingpages/Urlaubsguru/Deals.vue'\r\n ),\r\n meta: {\r\n breadcrumb: 'Deals',\r\n },\r\n },\r\n]\r\n","export const SbscomRoutes = [\r\n {\r\n path: '/deals',\r\n name: 'Deals',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"lp-urlaubsguru\" */ /* webpackPreload: true */ '../views/Landingpages/Sbscom/Deals.vue'\r\n ),\r\n meta: {\r\n breadcrumb: 'Deals',\r\n },\r\n },\r\n]\r\n","export const DefaultRoutes = [\r\n {\r\n path: '/willkommen/:promotion',\r\n name: 'promotion-redirect',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"home\" */ /* webpackPreload: true */ '../views/Search.vue'\r\n ),\r\n meta: {\r\n breadcrumb: 'Home',\r\n },\r\n },\r\n]\r\n","import {AdacRoutes} from '@/routes/adac'\r\nimport {LimangoRoutes} from '@/routes/limango'\r\nimport {OoesbRoutes} from '@/routes/ooesb'\r\nimport {PiratInViaggioRoutes} from '@/routes/piratinviaggio'\r\nimport {WatItalyRoutes} from '@/routes/watitaly'\r\nimport {UrlaubsguruRoutes} from '@/routes/urlaubsguru'\r\nimport {SbscomRoutes} from '@/routes/sbscom'\r\nimport {DefaultRoutes} from '@/routes/default'\r\n\r\nconst config = require(process.env.CONFIG_LOCATION)\r\nlet shop = config.whitelabelConfig.short.toLowerCase()\r\n\r\nconst getAdditionalRoutes = () => {\r\n switch (shop) {\r\n case 'adac':\r\n return AdacRoutes\r\n case 'limango':\r\n return LimangoRoutes\r\n case 'ooesb':\r\n return OoesbRoutes\r\n case 'piratinviaggio':\r\n return PiratInViaggioRoutes\r\n case 'watitaly':\r\n return WatItalyRoutes\r\n case 'urlaubsguru':\r\n return UrlaubsguruRoutes\r\n case 'sbscom':\r\n return SbscomRoutes\r\n default:\r\n return DefaultRoutes\r\n }\r\n}\r\n\r\nexport default {\r\n getAdditionalRoutes,\r\n}\r\n","import Vue from 'vue'\r\nimport Router from 'vue-router'\r\nimport {AccountChildRoutes} from '@/modules/account/routes'\r\nimport {CheckoutChildRoutes} from '@/modules/checkout/routes'\r\nimport {HotelChildRoutes} from '@/modules/hoteldisplay/routes'\r\n// import {BannerChildRoutes} from '@/modules/banner/routes'\r\n\r\nimport RouterLoader from '@/common/routes-loader'\r\n\r\n// import {AdacRoutes} from '@/routes/adac'\r\n// import {LimangoRoutes} from '@/routes/limango'\r\n// import {OoesbRoutes} from '@/routes/ooesb'\r\n// import {DefaultRoutes} from '@/routes/default'\r\n\r\nimport store from './store'\r\n\r\nVue.use(Router)\r\n\r\n//get current shop\r\n// const config = require(process.env.CONFIG_LOCATION)\r\n// let shop = config.whitelabelConfig.short.toLowerCase()\r\n\r\n// const getAdditionalRoutes = shop => {\r\n// switch (shop) {\r\n// case 'adac':\r\n// return AdacRoutes\r\n// case 'limango':\r\n// return LimangoRoutes\r\n// case 'ooesb':\r\n// return OoesbRoutes\r\n// default:\r\n// return DefaultRoutes\r\n// }\r\n// }\r\n\r\nexport default new Router({\r\n mode: 'history',\r\n base: process.env.BASE_URL,\r\n scrollBehavior(to, from, savedPosition) {\r\n if (savedPosition) {\r\n return savedPosition\r\n } else {\r\n //prevent scroll to top when inputs (for example searchfields) are clicked and only url query params (from.fullPath != to.fullPath but from.pa) change\r\n if (to.path !== from.path) {\r\n return {x: 0, y: 0}\r\n }\r\n }\r\n },\r\n routes: [\r\n {\r\n path: '/',\r\n name: 'home',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"start\" */ /* webpackPreload: true */ './views/Home.vue'\r\n ),\r\n meta: {\r\n breadcrumb: 'Home',\r\n },\r\n },\r\n {\r\n path: '/urlaub-finden',\r\n name: 'search',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"home\" */ /* webpackPreload: true */ './views/Search.vue'\r\n ),\r\n meta: {\r\n breadcrumb: 'Home',\r\n },\r\n },\r\n {\r\n alias: '/checkout/*',\r\n path: '/checkout',\r\n component: () =>\r\n import(/* webpackChunkName: \"checkout\" */ './views/Checkout.vue'),\r\n children: CheckoutChildRoutes,\r\n meta: {\r\n breadcrumb: {\r\n label: 'Checkout',\r\n parent: 'search',\r\n },\r\n },\r\n },\r\n {\r\n path: '/account',\r\n name: 'account',\r\n component: () =>\r\n import(/* webpackChunkName: \"account\" */ './views/Account.vue'),\r\n children: AccountChildRoutes,\r\n },\r\n // {\r\n // path: '/banner',\r\n // name: 'banner',\r\n // component: () =>\r\n // import(/* webpackChunkName: \"banner\" */ './views/BannerAds.vue'),\r\n // children: BannerChildRoutes,\r\n // },\r\n {\r\n path: '/password-forgotten',\r\n name: 'reset-password',\r\n component: () =>\r\n import(/* webpackChunkName: \"account\" */ './views/Account.vue'),\r\n },\r\n {\r\n path: '/search/:keyword',\r\n name: 'search-keyword',\r\n component: () =>\r\n import(/* webpackChunkName: \"home\" */ './views/Search.vue'),\r\n },\r\n {\r\n path: '/reiseziel/:iso/:country',\r\n alias: '/reiseziel/:iso',\r\n name: 'search-by-country',\r\n component: () =>\r\n import(/* webpackChunkName: \"home\" */ './views/Search.vue'),\r\n },\r\n {\r\n path: '/thema/:name/:id',\r\n alias: '/thema/:id',\r\n name: 'search-by-theme',\r\n component: () =>\r\n import(/* webpackChunkName: \"home\" */ './views/Search.vue'),\r\n },\r\n {\r\n path: '/view/:id/:key',\r\n name: 'order-detail',\r\n component: () =>\r\n import(/* webpackChunkName: \"order\" */ './views/Order.vue'),\r\n },\r\n {\r\n path: '/complete/:id/:key',\r\n name: 'order-complete',\r\n component: () =>\r\n import(/* webpackChunkName: \"order\" */ './views/Order.vue'),\r\n },\r\n // {\r\n // alias: '/hotel/:id',\r\n // path: '/hotel/:name/:id',\r\n // name: 'hotel',\r\n // children: HotelChildRoutes,\r\n // component: () =>\r\n // import(/* webpackChunkName: \"hotel\" */ './views/Hotel.vue'),\r\n // },\r\n {\r\n alias: '/urlaub/*',\r\n path: '/urlaub',\r\n name: 'urlaub-main',\r\n children: HotelChildRoutes,\r\n component: () =>\r\n import(/* webpackChunkName: \"hotel\" */ './views/Hotel.vue'),\r\n },\r\n // {\r\n // path: '/hotel/:id',\r\n // name: 'foo',\r\n // component: () =>\r\n // import(/* webpackChunkName: \"hotel\" */ './views/Hotel.vue'),\r\n // //import(/* webpackChunkName: \"home\" */ './views/Home.vue'),\r\n // },\r\n\r\n {\r\n path: '/willkommen/:promotion',\r\n name: 'promotion-redirect',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"home\" */ /* webpackPreload: true */ './views/Search.vue'\r\n ),\r\n meta: {\r\n breadcrumb: 'Home',\r\n },\r\n },\r\n //...getAdditionalRoutes(shop),\r\n ...RouterLoader.getAdditionalRoutes(),\r\n // {\r\n // path: '/blackfriday',\r\n // name: 'blackfriday',\r\n // component: () =>\r\n // import(\r\n // /* webpackChunkName: \"lp-blackfriday\" */ /* webpackPreload: true */ './views/Landingpages/BlackFriday.vue'\r\n // ),\r\n // beforeEnter: (to, from, next) => {\r\n // const shop = Vue.prototype.$whitelabel.short.toLowerCase()\r\n // if (shop === 'adac') {\r\n // next()\r\n // } else {\r\n // next('/')\r\n // }\r\n // },\r\n // meta: {\r\n // breadcrumb: 'Black Friday',\r\n // },\r\n // },\r\n // {\r\n // path: '/valentinstag',\r\n // name: 'valentine',\r\n // component: () =>\r\n // import(\r\n // /* webpackChunkName: \"lp-valentine\" */ /* webpackPreload: true */ './views/Landingpages/Valentine.vue'\r\n // ),\r\n // beforeEnter: (to, from, next) => {\r\n // const shop = Vue.prototype.$whitelabel.short.toLowerCase()\r\n // if (shop === 'adac') {\r\n // next()\r\n // } else {\r\n // next('/')\r\n // }\r\n // },\r\n // meta: {\r\n // breadcrumb: 'Valentinstag',\r\n // },\r\n // },\r\n // {\r\n // path: '/ostern',\r\n // name: 'easter',\r\n // component: () =>\r\n // import(\r\n // /* webpackChunkName: \"lp-easter\" */ /* webpackPreload: true */ './views/Landingpages/Easter.vue'\r\n // ),\r\n // beforeEnter: (to, from, next) => {\r\n // const shop = Vue.prototype.$whitelabel.short.toLowerCase()\r\n // if (shop === 'adac') {\r\n // next()\r\n // } else {\r\n // next('/')\r\n // }\r\n // },\r\n // meta: {\r\n // breadcrumb: 'Ostern',\r\n // },\r\n // },\r\n // {\r\n // path: '/muttertag',\r\n // name: 'mothersday',\r\n // component: () =>\r\n // import(\r\n // /* webpackChunkName: \"lp-mothersday\" */ /* webpackPreload: true */ './views/Landingpages/MothersDay.vue'\r\n // ),\r\n // beforeEnter: (to, from, next) => {\r\n // const shop = Vue.prototype.$whitelabel.short.toLowerCase()\r\n // if (shop === 'adac') {\r\n // next()\r\n // } else {\r\n // next('/')\r\n // }\r\n // },\r\n // meta: {\r\n // breadcrumb: 'Muttertag',\r\n // },\r\n // },\r\n // {\r\n // path: '/ssv',\r\n // name: 'ssv',\r\n // component: () =>\r\n // import(\r\n // /* webpackChunkName: \"lp-ssv\" */ /* webpackPreload: true */ './views/Landingpages/SummerSale.vue'\r\n // ),\r\n // beforeEnter: (to, from, next) => {\r\n // const shop = Vue.prototype.$whitelabel.short.toLowerCase()\r\n // if (shop === 'adac') {\r\n // next()\r\n // } else {\r\n // next('/')\r\n // }\r\n // },\r\n // meta: {\r\n // breadcrumb: 'SSV',\r\n // },\r\n // },\r\n // {\r\n // path: '/motorwelt',\r\n // name: 'motorwelt',\r\n // component: () =>\r\n // import(\r\n // /* webpackChunkName: \"lp-motorwelt\" */ /* webpackPreload: true */ './views/Landingpages/Motorwelt.vue'\r\n // ),\r\n // beforeEnter: (to, from, next) => {\r\n // const shop = Vue.prototype.$whitelabel.short.toLowerCase()\r\n // if (shop === 'adac') {\r\n // next()\r\n // } else {\r\n // next('/')\r\n // }\r\n // },\r\n // meta: {\r\n // breadcrumb: 'Motorwelt',\r\n // },\r\n // },\r\n // {\r\n // path: '/suedtirol',\r\n // name: 'suedtirol',\r\n // component: () =>\r\n // import(\r\n // /* webpackChunkName: \"lp-suedtirol\" */ /* webpackPreload: true */ './views/Landingpages/Suedtirol.vue'\r\n // ),\r\n // beforeEnter: (to, from, next) => {\r\n // const shop = Vue.prototype.$whitelabel.short.toLowerCase()\r\n // if (shop === 'limango') {\r\n // next()\r\n // } else {\r\n // next('/')\r\n // }\r\n // },\r\n // meta: {\r\n // breadcrumb: 'Südtirol',\r\n // },\r\n // },\r\n // {\r\n // path: '/deutschland',\r\n // name: 'germany',\r\n // component: () =>\r\n // import(\r\n // /* webpackChunkName: \"lp-germany\" */ /* webpackPreload: true */ './views/Landingpages/Germany.vue'\r\n // ),\r\n // beforeEnter: (to, from, next) => {\r\n // const shop = Vue.prototype.$whitelabel.short.toLowerCase()\r\n // if (shop === 'limango') {\r\n // next()\r\n // } else {\r\n // next('/')\r\n // }\r\n // },\r\n // meta: {\r\n // breadcrumb: 'Deutschland',\r\n // },\r\n // },\r\n // {\r\n // path: '/schnaeppchen',\r\n // name: 'bargain',\r\n // component: () =>\r\n // import(\r\n // /* webpackChunkName: \"lp-bargain\" */ /* webpackPreload: true */ './views/Landingpages/Bargain.vue'\r\n // ),\r\n // beforeEnter: (to, from, next) => {\r\n // const shop = Vue.prototype.$whitelabel.short.toLowerCase()\r\n // if (shop === 'ooesb') {\r\n // next()\r\n // } else {\r\n // next('/')\r\n // }\r\n // },\r\n // meta: {\r\n // breadcrumb: 'Deutschland',\r\n // },\r\n // },\r\n // {\r\n // path: '/weihnachten',\r\n // name: 'christmas',\r\n // component: () =>\r\n // import(\r\n // /* webpackChunkName: \"lp-christmas\" */ /* webpackPreload: true */ './views/Landingpages/Christmas.vue'\r\n // ),\r\n // beforeEnter: (to, from, next) => {\r\n // const shop = Vue.prototype.$whitelabel.short.toLowerCase()\r\n // if (shop === 'adac') {\r\n // next()\r\n // } else {\r\n // next('/')\r\n // }\r\n // },\r\n // meta: {\r\n // breadcrumb: 'Weihnachten',\r\n // },\r\n // },\r\n {\r\n path: '/to/:id',\r\n name: 'redirect-to-offer',\r\n component: () =>\r\n import(/* webpackChunkName: \"static\" */ './components/Redirect.vue'),\r\n },\r\n {\r\n path: '/:key',\r\n name: 'markdown-page',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"static\" */ './views/StaticMarkdownContent.vue'\r\n ),\r\n beforeEnter(to, from, next) {\r\n const page = store.getters.pages.find(\r\n f => f.slug.toLowerCase() === to.params.key.toLowerCase(),\r\n )\r\n if (page || store.getters.pendingContent) {\r\n next()\r\n } else {\r\n next({name: '404'})\r\n }\r\n },\r\n },\r\n {\r\n path: '/404',\r\n alias: '*',\r\n name: '404',\r\n component: () =>\r\n import(\r\n /* webpackChunkName: \"pagenotfound\" */ './views/PageNotFound.vue'\r\n ),\r\n },\r\n ],\r\n})\r\n","import Vue from 'vue'\r\nimport Vuex from 'vuex'\r\nimport i18n from '@/i18n'\r\nimport Checkout from '@/api/checkout-api'\r\nimport Offer from '@/api/offer-api'\r\nimport OrderValidator from '@/api/order-validator'\r\nimport AuthApi from '@/api/auth-api'\r\nimport AccountApi from '@/api/account-api'\r\nimport contentApi from '../api/content-api'\r\nimport ValidationErrorHandler from '@/common/validation-error-handler'\r\nimport router from '../router'\r\nimport {NotificationProgrammatic as Notification} from 'buefy'\r\nconst accessTokenIndex = 'accessToken'\r\nconst referalIndex = 'referal'\r\nimport {bootstrap} from 'vue-gtag'\r\n\r\nimport {createLogger} from '@/common/log'\r\nconst logger = createLogger('store.js', '', false)\r\n\r\nVue.use(Vuex)\r\n\r\nfunction analyticsDeactivated() {\r\n if (localStorage.acceptAllCookies === 'true') {\r\n return false\r\n }\r\n return true\r\n}\r\n\r\n// function getThemes(item) {\r\n// if (item.themes != undefined) {\r\n// return item.themes.map(f => f.name).join(',')\r\n// }\r\n\r\n// return ''\r\n// }\r\n\r\nexport default new Vuex.Store({\r\n state: {\r\n cart: {},\r\n itemCount: 0,\r\n isGuardActive: false,\r\n disableSite: false,\r\n sidebarVisible: false,\r\n invalidPromotion: false,\r\n storeCurrency: 'EUR',\r\n isAnalyticsDeactivated: analyticsDeactivated(),\r\n menu: {\r\n themes: [],\r\n countries: [],\r\n footer: [],\r\n },\r\n content: {\r\n pending: true,\r\n home: [],\r\n pages: [],\r\n },\r\n promotions: [],\r\n isoCountries: [\r\n {iso: 'AT', country: i18n.t('countries.AT')},\r\n {iso: 'DE', country: i18n.t('countries.DE')},\r\n {iso: 'CH', country: i18n.t('countries.CH')},\r\n {iso: 'IT', country: i18n.t('countries.IT')},\r\n {iso: 'FR', country: i18n.t('countries.FR')},\r\n {iso: 'LI', country: i18n.t('countries.LI')},\r\n {iso: 'CZ', country: i18n.t('countries.CZ')},\r\n ],\r\n displayReduction: {\r\n hasActiveReduction: false,\r\n activeReductionName: null,\r\n reductionFx: null,\r\n },\r\n user: null,\r\n showLoginWindow: false,\r\n accessToken: {},\r\n locale: 'de',\r\n },\r\n getters: {\r\n productsInCart: state => state.cart.orderItems,\r\n currentOrderId: state => state.cart.id,\r\n currentOrderKey: state => state.cart.token,\r\n cartSubTotal: state =>\r\n state.cart.summary ? state.cart.summary.subtotal : 0,\r\n cartShipping: state =>\r\n state.cart.summary ? state.cart.summary.shippingTotal : 0,\r\n cartDiscount: state =>\r\n state.cart.summary ? state.cart.summary.discountTotal : 0,\r\n cartTotal: state => (state.cart.summary ? state.cart.summary.total : 0),\r\n cartFees: state => (state.cart.summary ? state.cart.summary.fees : []),\r\n cartPrepaid: state =>\r\n state.cart.summary ? state.cart.summary.prepaid : [],\r\n cartCurrency: state => state.cart.currency,\r\n cartPaymentType: state => state.cart.paymentType,\r\n activeReduction: state => state.cart.reduction,\r\n itemCount: state => state.itemCount,\r\n disableSite: state => state.disableSite,\r\n drawer: state => state.sidebarVisible,\r\n menu: state => state.menu,\r\n invalidPromotion: state => state.invalidPromotion,\r\n isoCountries: state => state.isoCountries,\r\n displayReduction: state => state.displayReduction,\r\n displayReductionActive: state => state.displayReduction.hasActiveReduction,\r\n isGuarded: state => state.isGuardActive,\r\n isAnalyticsDeactivated: state => state.isAnalyticsDeactivated,\r\n hasUser: state => state.user != null,\r\n userName: state => (state.user != null ? state.user.name : ''),\r\n token: state => state.accessToken,\r\n showLoginWindow: state => state.showLoginWindow,\r\n pages: state => state.content.pages,\r\n pendingContent: state => state.content.pending,\r\n home: state => state.content.home,\r\n locale: state => state.locale,\r\n promotions: state => state.promotions,\r\n localeIso: state => {\r\n if (state.locale === 'en') {\r\n return 'en_GB'\r\n }\r\n\r\n return `${state.locale}_${state.locale.toUpperCase()}`\r\n },\r\n },\r\n mutations: {\r\n CART_ITEMS_MODIFIED: (state, payload) => {\r\n state.cart.summary = payload.summary\r\n },\r\n PRODUCT_ADDED: (state, product) => {\r\n let replacingIndex = state.cart.orderItems.findIndex(\r\n f => f.id == product.id,\r\n )\r\n if (replacingIndex > -1) {\r\n state.cart.orderItems.splice(replacingIndex, 1, product)\r\n } else {\r\n state.cart.orderItems.push(product)\r\n }\r\n state.itemCount = state.cart.orderItems.reduce(\r\n (a, c) => a + c.quantity,\r\n 0,\r\n )\r\n // try {\r\n // if (Vue.prototype.$whitelabel.fbPixelEnabled) {\r\n // Vue.analytics.fbq.event('AddToCart')\r\n // }\r\n // } catch (e) {\r\n // //todo some logging mechanism i guess\r\n // }\r\n },\r\n PRODUCT_REMOVED: (state, product) => {\r\n state.cart.orderItems = state.cart.orderItems.filter(\r\n f => f.id != product.id,\r\n )\r\n state.itemCount = state.cart.orderItems.reduce(\r\n (a, c) => a + c.quantity,\r\n 0,\r\n )\r\n },\r\n PRODUCT_UPDATED: (state, product) => {\r\n let replacingIndex = state.cart.orderItems.findIndex(\r\n f => f.id == product.id,\r\n )\r\n state.cart.orderItems.splice(replacingIndex, 1, product)\r\n state.itemCount = state.cart.orderItems.reduce(\r\n (a, c) => a + c.quantity,\r\n 0,\r\n )\r\n },\r\n CART_UPDATED: (state, cart) => {\r\n state.invalidPromotion = false\r\n state.cart = cart\r\n if (cart && cart.orderItems && cart.orderItems.length > 0) {\r\n state.itemCount = state.cart.orderItems.reduce(\r\n (a, c) => a + c.quantity,\r\n 0,\r\n )\r\n } else {\r\n state.itemCount = 0\r\n }\r\n },\r\n PAYMENT_METHOD_UPDATED: (state, paymentMethod) => {\r\n state.cart.paymentType = paymentMethod\r\n },\r\n FLASH_MESSAGE_CREATED: (_, message) => {\r\n Notification.open(message)\r\n },\r\n REDUCTION_INFO_UPDATED: (state, reduction) => {\r\n if (!reduction || !reduction.valid) {\r\n state.displayReduction.hasActiveReduction = false\r\n state.displayReduction.reductionFx = null\r\n state.displayReduction.activeReductionName = null\r\n } else {\r\n state.displayReduction.hasActiveReduction = true\r\n //cap the value cause the cart / order system doesnt allow this anyways\r\n const capped = (val, org) => {\r\n if (val <= 0) {\r\n return org\r\n }\r\n return val\r\n }\r\n switch (reduction.operation) {\r\n case '+':\r\n state.displayReduction.reductionFx = amount =>\r\n capped(amount - reduction.value, amount)\r\n break\r\n case '%':\r\n state.displayReduction.reductionFx = amount =>\r\n capped(amount * (1 - reduction.value), amount)\r\n break\r\n default:\r\n state.displayReduction.reductionFx = amount => amount\r\n break\r\n }\r\n state.displayReduction.activeReductionName = reduction.name\r\n }\r\n },\r\n CART_CLEARED: state => {\r\n state.cart = {}\r\n state.itemCount = 0\r\n },\r\n INVALID_PROMOTION: state => {\r\n state.invalidPromotion = true\r\n },\r\n INVALID_PROMOTION_RESET: state => {\r\n state.invalidPromotion = false\r\n },\r\n SITE_LOCKED: state => {\r\n state.disableSite = true\r\n },\r\n SITE_UNLOCKED: state => {\r\n state.disableSite = false\r\n },\r\n DRAWER_CHANGED: (state, payload) => {\r\n state.sidebarVisible = payload.visible\r\n },\r\n MENU_LOADED: (state, payload) => {\r\n state.menu.countries = payload.countries\r\n state.menu.themes = payload.themes.filter(f => f.value)\r\n },\r\n CONTENT_RECEIVED: (state, payload) => {\r\n if (payload) {\r\n state.content.pages = payload.pages\r\n if (payload.extensionPoints) {\r\n for (let key of payload.extensionPoints.footerMenu) {\r\n let page = payload.pages.find(\r\n f => f.name == key && f.locale == state.locale,\r\n )\r\n if (page) {\r\n state.menu.footer.push({slug: page.slug, menu: page.title})\r\n }\r\n }\r\n if (payload.extensionPoints.home) {\r\n state.content.home = payload.extensionPoints.home\r\n }\r\n }\r\n }\r\n state.content.pending = false\r\n },\r\n TOGGLE_GUARD: (state, payload) => {\r\n state.isGuardActive = payload.active\r\n },\r\n DEACTIVATE_ANALYTICS: state => {\r\n state.isAnalyticsDeactivated = true\r\n localStorage.acceptAllCookies = false\r\n\r\n let analyticstype = Vue.prototype.$whitelabel.analyticsType\r\n\r\n if (analyticstype == 'gtag' || analyticstype == 'both') {\r\n logger.debug('gtag optout')\r\n //Vue.$gtag.enabled = false\r\n Vue.$gtag.optOut()\r\n }\r\n if (analyticstype == 'ua' || analyticstype == 'both') {\r\n logger.debug('ga optout')\r\n Vue.$ga.disable()\r\n }\r\n\r\n if (Vue.prototype.$whitelabel.tagManager) {\r\n logger.debug('gtm enabled:' + Vue.gtm.enabled())\r\n Vue.gtm.enable(false)\r\n }\r\n\r\n //#todo add gtag\r\n },\r\n ACTIVATE_ANALYTICS: state => {\r\n state.isAnalyticsDeactivated = false\r\n localStorage.acceptAllCookies = true\r\n\r\n let analyticstype = Vue.prototype.$whitelabel.analyticsType\r\n\r\n if (analyticstype == 'gtag' || analyticstype == 'both') {\r\n logger.debug('gtag optin')\r\n //Vue.$gtag.enabled = true\r\n bootstrap().then(() => {\r\n // all done!\r\n Vue.$gtag.optIn()\r\n })\r\n }\r\n\r\n if (analyticstype == 'ua' || analyticstype == 'both') {\r\n logger.debug('ga optin')\r\n Vue.$ga.enable()\r\n }\r\n\r\n if (Vue.prototype.$whitelabel.fbPixelEnabled) {\r\n Vue.analytics.fbq.init(Vue.prototype.$whitelabel.fbPixelId)\r\n Vue.analytics.fbq.event('PageView')\r\n }\r\n\r\n if (Vue.prototype.$whitelabel.tagManager) {\r\n logger.debug('gtm enabled:' + Vue.gtm.enabled())\r\n Vue.gtm.enable(true)\r\n }\r\n\r\n //#todo add gtag\r\n },\r\n ACCESS_TOKEN_UPDATED: (state, token) => {\r\n state.accessToken = token\r\n const jwt = AuthApi.parseJwt(token.token)\r\n if (state.user == null) {\r\n state.user = {}\r\n }\r\n state.user.id = jwt.id\r\n state.user.name = jwt.sub\r\n },\r\n ACCESS_TOKEN_DELETED: state => {\r\n state.accessToken = null\r\n state.user = null\r\n },\r\n TOGGLE_LOGIN_WINDOW: (state, payload) => {\r\n state.showLoginWindow = payload.show\r\n },\r\n LOCALE_CHANGED: (state, payload) => {\r\n state.locale = payload.locale\r\n },\r\n PROMOTIONS_RECEIVED: (state, payload) => {\r\n state.promotions = payload\r\n },\r\n },\r\n\r\n actions: {\r\n modifyCartProduct: (context, payload) => {\r\n if (payload.modified && payload.modified.length > 0) {\r\n for (let item of payload.modified) {\r\n context.commit('PRODUCT_UPDATED', item)\r\n }\r\n }\r\n if (payload.added && payload.added.length > 0) {\r\n for (let item of payload.added) {\r\n context.commit('PRODUCT_ADDED', item)\r\n }\r\n }\r\n if (payload.removed && payload.removed.length > 0) {\r\n for (let item of payload.removed) {\r\n context.commit('PRODUCT_REMOVED', item)\r\n }\r\n }\r\n },\r\n addProduct: async (context, variant) => {\r\n try {\r\n let order = await Checkout.createOrderIfNeeded()\r\n if (order) {\r\n context.commit('CART_UPDATED', order)\r\n }\r\n\r\n let res = await Checkout.addItem(variant)\r\n if (res) {\r\n context.commit('CART_ITEMS_MODIFIED', res)\r\n context.dispatch('modifyCartProduct', res)\r\n }\r\n } catch {\r\n context.commit('FLASH_MESSAGE_CREATED', {\r\n type: 'is-danger',\r\n position: 'is-bottom',\r\n message: i18n.t('errors.retryable-error'),\r\n })\r\n }\r\n },\r\n addGiftCard: async (context, tan) => {\r\n try {\r\n let order = await Checkout.createOrderIfNeeded()\r\n if (order) {\r\n context.commit('CART_UPDATED', order)\r\n }\r\n\r\n let res = await Checkout.addGiftCardToOrder(tan)\r\n if (res) {\r\n context.commit('CART_ITEMS_MODIFIED', {summary: res})\r\n context.dispatch('refreshPayment')\r\n }\r\n } catch {\r\n context.commit('FLASH_MESSAGE_CREATED', {\r\n type: 'is-danger',\r\n position: 'is-bottom',\r\n message: i18n.t('errors.retryable-error'),\r\n })\r\n }\r\n },\r\n removeGiftCard: async (context, tan) => {\r\n try {\r\n let res = await Checkout.removeGiftCardFromOrder(tan)\r\n if (res) {\r\n context.commit('CART_ITEMS_MODIFIED', {summary: res})\r\n context.dispatch('refreshPayment')\r\n }\r\n } catch {\r\n context.commit('FLASH_MESSAGE_CREATED', {\r\n type: 'is-danger',\r\n position: 'is-bottom',\r\n message: i18n.t('errors.retryable-error'),\r\n })\r\n }\r\n },\r\n removeProduct: async (context, item) => {\r\n try {\r\n let res = await Checkout.removeItem(item)\r\n if (res) {\r\n context.commit('CART_ITEMS_MODIFIED', res)\r\n context.dispatch('modifyCartProduct', res)\r\n }\r\n } catch {\r\n context.commit('FLASH_MESSAGE_CREATED', {\r\n type: 'is-danger',\r\n position: 'is-bottom',\r\n message: i18n.t('errors.retryable-error'),\r\n })\r\n }\r\n },\r\n changeQuantityOfProduct: async (context, payload) => {\r\n try {\r\n let res = await Checkout.changeQuantity(\r\n payload.itemId,\r\n payload.quantity,\r\n )\r\n if (res) {\r\n context.commit('CART_ITEMS_MODIFIED', res)\r\n context.dispatch('modifyCartProduct', res)\r\n }\r\n } catch {\r\n context.commit('FLASH_MESSAGE_CREATED', {\r\n type: 'is-danger',\r\n position: 'is-bottom',\r\n message: i18n.t('errors.retryable-error'),\r\n })\r\n }\r\n },\r\n refreshCart: async (context, payload) => {\r\n let res = await Checkout.checkOpenOrder()\r\n if (res) {\r\n context.commit('CART_UPDATED', res)\r\n if (payload && payload.delegateCustomer) {\r\n await context.dispatch(\r\n '$_checkout/useDelegatedUserData',\r\n res.customer,\r\n )\r\n }\r\n if (res.reductionId) {\r\n await context.dispatch('updateReductionInfo', res.reductionId)\r\n }\r\n }\r\n },\r\n refreshPayment: async context => {\r\n let res = await Checkout.refreshPaymentType()\r\n if (res) {\r\n context.commit('PAYMENT_METHOD_UPDATED', res)\r\n }\r\n },\r\n updatePayment: (context, payload) => {\r\n if (payload) {\r\n context.commit('PAYMENT_METHOD_UPDATED', payload)\r\n }\r\n },\r\n prepareForCheckout: async () => {\r\n await Checkout.prepareForCheckout()\r\n let validationResult = await OrderValidator.validateOrder()\r\n if (!validationResult.validForSale) {\r\n OrderValidator.invalidOrderHandler(validationResult)\r\n }\r\n },\r\n clearCart: context => {\r\n localStorage.removeItem('CURRENT_ID')\r\n localStorage.removeItem('TOKEN')\r\n context.commit('CART_CLEARED')\r\n },\r\n updateCart: (context, payload) => {\r\n context.commit('CART_UPDATED', payload)\r\n },\r\n lockSite: (context, payload) => {\r\n context.commit('SITE_LOCKED', payload)\r\n },\r\n unlockSite: context => {\r\n context.commit('SITE_UNLOCKED')\r\n },\r\n showDrawer: context => {\r\n context.commit('DRAWER_CHANGED', {visible: true})\r\n },\r\n hideDrawer: context => {\r\n context.commit('DRAWER_CHANGED', {visible: false})\r\n },\r\n setGuardActive: context => {\r\n context.commit('TOGGLE_GUARD', {active: true})\r\n },\r\n unlockGuard: context => {\r\n context.commit('TOGGLE_GUARD', {active: false})\r\n },\r\n loadMenuEntires: async context => {\r\n let data = await Offer.getMenu()\r\n context.commit('MENU_LOADED', data)\r\n },\r\n clearInvalidReduction: context => {\r\n context.commit('INVALID_PROMOTION_RESET')\r\n },\r\n flashMessageDanger: (context, payload) => {\r\n context.commit('FLASH_MESSAGE_CREATED', {\r\n type: 'is-danger',\r\n position: 'is-bottom',\r\n message: payload.message,\r\n })\r\n },\r\n applyReduction: async (context, code) => {\r\n try {\r\n await Checkout.createOrderIfNeeded()\r\n let res = await Checkout.applyReduction(code)\r\n context.commit('CART_UPDATED', res)\r\n if (res.reductionId) {\r\n context.dispatch('updateReductionInfo', res.reductionId)\r\n }\r\n } catch (error) {\r\n if (error && error.response) {\r\n if (error.response.type == 'https://httpstatuses.com/500') {\r\n //notify\r\n }\r\n if (\r\n error.status == 417 ||\r\n error.response.data.type ==\r\n 'https://touristik-vertrieb.at/invalid-reduction'\r\n ) {\r\n context.commit('INVALID_PROMOTION')\r\n }\r\n }\r\n context.dispatch('unlockSite')\r\n }\r\n },\r\n removeReduction: async context => {\r\n await Checkout.createOrderIfNeeded()\r\n let res = await Checkout.removeReduction()\r\n context.commit('CART_UPDATED', res)\r\n },\r\n updateReductionInfo: async (context, id) => {\r\n let res = await Checkout.getReductionInfo(id)\r\n context.commit('REDUCTION_INFO_UPDATED', res)\r\n },\r\n deactivateAnalytics: context => {\r\n context.commit('DEACTIVATE_ANALYTICS')\r\n },\r\n activateAnalytics: context => {\r\n context.commit('ACTIVATE_ANALYTICS')\r\n },\r\n login: async ({dispatch, commit}, payload) => {\r\n try {\r\n let res = await AuthApi.login(payload.usr, payload.pwd)\r\n if (res && res.accessToken) {\r\n var expiresOn = new Date()\r\n const expiry = expiresOn.setSeconds(\r\n expiresOn.getSeconds() + res.accessToken.expiresIn,\r\n )\r\n res.accessToken.expiry = expiry\r\n localStorage.setItem(\r\n accessTokenIndex,\r\n JSON.stringify(res.accessToken),\r\n )\r\n commit('ACCESS_TOKEN_UPDATED', res.accessToken)\r\n if (\r\n res.orderId &&\r\n res.orderId.length > 0 &&\r\n res.token &&\r\n res.token.length > 0\r\n ) {\r\n Checkout.updateCurrentOrder(res.orderId, res.token)\r\n await dispatch('refreshCart')\r\n }\r\n commit('TOGGLE_LOGIN_WINDOW', {show: false})\r\n }\r\n return res\r\n } catch {\r\n return {\r\n success: false,\r\n }\r\n }\r\n },\r\n logout: async ({commit}) => {\r\n commit('ACCESS_TOKEN_DELETED')\r\n localStorage.removeItem(accessTokenIndex)\r\n Checkout.resetOrderStorage()\r\n commit('CART_CLEARED')\r\n router.push({name: 'account'})\r\n },\r\n storeInit: async ({commit}, payload) => {\r\n if (payload.locale) {\r\n commit('LOCALE_CHANGED', {locale: payload.locale})\r\n }\r\n let content = await contentApi.getOverview(payload.site)\r\n commit('CONTENT_RECEIVED', content)\r\n let promotions = await contentApi.getCurrentPromotions()\r\n commit('PROMOTIONS_RECEIVED', promotions)\r\n },\r\n setReferalToken: (_, payload) => {\r\n const stored = localStorage.getItem(referalIndex)\r\n if (stored) {\r\n const referal = JSON.parse(stored)\r\n if (payload.code === referal.code) {\r\n return\r\n }\r\n }\r\n const newReferal = JSON.stringify(payload)\r\n localStorage.setItem(referalIndex, newReferal)\r\n },\r\n loadAccesToken: ({commit}) => {\r\n const storageToken = localStorage.getItem(accessTokenIndex)\r\n if (storageToken) {\r\n const token = JSON.parse(storageToken)\r\n if (new Date(token.expiry) > new Date()) {\r\n commit('ACCESS_TOKEN_UPDATED', JSON.parse(storageToken))\r\n }\r\n }\r\n },\r\n refreshToken: async ({commit}) => {\r\n try {\r\n let res = await AuthApi.refresh(commit.token)\r\n if (res && res.accessToken) {\r\n var expiresOn = new Date()\r\n let expiry = expiresOn.setSeconds(\r\n expiresOn.getSeconds() + res.accessToken.expiresIn,\r\n )\r\n res.accessToken.expiry = expiry\r\n localStorage.setItem(\r\n accessTokenIndex,\r\n JSON.stringify(res.accessToken),\r\n )\r\n commit('ACCESS_TOKEN_UPDATED', res.accessToken)\r\n }\r\n } catch {\r\n //if we cant extend it - we throw it away\r\n commit('ACCESS_TOKEN_DELETED')\r\n }\r\n },\r\n showLogin: async ({commit}) => {\r\n commit('TOGGLE_LOGIN_WINDOW', {show: true})\r\n },\r\n passwordForgotten: async (context, payload) => {\r\n try {\r\n let result = await AccountApi.passwordForgotten(payload.email)\r\n return result\r\n } catch (e) {\r\n let validationError = ValidationErrorHandler.handle(e)\r\n if (validationError.handled) {\r\n return {success: false, errors: validationError.errors}\r\n }\r\n let success = {success: false, errors: []}\r\n return success\r\n }\r\n },\r\n changeLocale: (context, payload) => {\r\n context.commit('LOCALE_CHANGED', payload)\r\n context.dispatch('loadMenuEntires')\r\n },\r\n },\r\n})\r\n","export const whitelabelConfig = {\r\n short: 'moveen',\r\n assetUrl: '/whitelabel/moveen/',\r\n iconUrl: '/img/icons/moveen/',\r\n storeName: 'Moveen',\r\n company: 'we-are.travel GmbH',\r\n analyticsId: 'G-W3635N927T', //ga4\r\n analyticsType: 'gtag', //should be 'gtag', 'ua' or 'both'\r\n logoHeader:\r\n 'https://assets.urlaubsgutschein.kaufen/whitelabel/moveen/moveen-logo.svg',\r\n logoFooter:\r\n 'https://assets.urlaubsgutschein.kaufen/whitelabel/moveen/moveen-logowhite.svg',\r\n // logoHeader: () => require('@/assets/ooesb-logo.png'),\r\n // logoFooter: () => require('@/assets/ooesb-logo.png'),\r\n isStandalone: false,\r\n showHeader: true,\r\n showHeaderLogo: false,\r\n showFooterLogo: false,\r\n fixedNavbar: false,\r\n heroTitle: 'Special Deals',\r\n hasHeroSubtitle: true,\r\n heroSubtitle: 'clever & günstig mit Urlaubsgutschein',\r\n supportMail: 'specialdeals@moveen.shop',\r\n supportPhone: '+39 0473 861 887',\r\n hasHeroAddition: false,\r\n showPromoNotification: false,\r\n showReduction: true,\r\n heroHomeOnly: true,\r\n hasCookieConsent: false,\r\n hasNewsletterOptin: false,\r\n campaignsEnabled: true,\r\n heroImageResolution: {\r\n xl: {width: 2560, height: 500, crop: 'smart'},\r\n l: {width: 1200, height: 500, crop: 'smart'},\r\n m: {width: 1024, height: 500, crop: 'smart'},\r\n s: {width: 960, height: 300, crop: 'east'},\r\n xs: {width: 700, height: 200, crop: 'centre'},\r\n },\r\n hasOfferCta: true,\r\n hide5sup: true,\r\n heroInfoText: 'Sparen Sie bis zu 70% für Ihren Kurzurlaub.',\r\n homepage: {\r\n advantages: false,\r\n },\r\n // locales: [\r\n // {\r\n // text: 'Deutsch',\r\n // value: 'de',\r\n // },\r\n // {\r\n // text: 'Italiano',\r\n // value: 'it',\r\n // },\r\n // ],\r\n styleOverride: () =>\r\n import(\r\n /* webpackPrefetch: true */\r\n\r\n /* webpackPreload: true */ '@/styles/styles-moveen.scss'\r\n ),\r\n}\r\n","var map = {\n\t\"./de.json\": \"6ce2\",\n\t\"./en.json\": \"edd4\",\n\t\"./it.json\": \"0825\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"49f8\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticStyle:{\"display\":\"contents\"}},[(_vm.$route.meta.emptyLayout)?_c('router-view'):_vm._e(),(!_vm.$route.meta.emptyLayout)?_c('div',{class:{'is-devmode': _vm.isDevMode},attrs:{\"id\":\"app\"}},[(!_vm.$whitelabel.isStandalone && _vm.$whitelabel.heroHomeOnly)?_c('HeroInfoStandalone',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.$route.path === '/'),expression:\"$route.path === '/'\"}]}):_vm._e(),(!_vm.$whitelabel.isStandalone && !_vm.$whitelabel.heroHomeOnly)?_c('HeroInfoStandalone'):_vm._e(),_c('Navigation'),_c('main',{staticClass:\"section main-content\",attrs:{\"role\":\"main\"}},[_c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[_c('router-view',{key:1})],1)],1),_c('ScrollToTop'),_c('FooterProxy'),_c('cookie-law',{attrs:{\"storageName\":\"acceptAllCookies\"},scopedSlots:_vm._u([{key:\"default\",fn:function(props){return _c('div',{},[_c('div',{staticClass:\"columns u-is-vcenter\"},[_c('div',{staticClass:\"column is-7 is-size-7-touch\"},[_vm._v(\" \"+_vm._s(_vm.$t('consent.policy1'))+\" \"),_c('a',{staticClass:\"has-text-white\",attrs:{\"href\":\"/datenschutz\",\"title\":_vm.$t('consent.policy2')}},[_vm._v(_vm._s(_vm.$t('consent.policy2')))])]),_c('div',{staticClass:\"column is-5\"},[_c('div',{staticClass:\"buttons u-is-hend\"},[_c('b-button',{staticClass:\"is-size-7-touch\",attrs:{\"type\":\"is-success\"},on:{\"click\":function($event){props.accept()\r\n _vm.allowCookies()}}},[_vm._v(_vm._s(_vm.$t('consent.allow_cookies')))]),_c('b-button',{staticClass:\"is-size-7-touch\",attrs:{\"type\":\"is-light\"},on:{\"click\":function($event){props.decline()\r\n _vm.declineCookies()}}},[_vm._v(_vm._s(_vm.$t('consent.just_necessary_cookies')))])],1)])])])}}],null,false,1872951211)}),_c('Drawer',{ref:\"CartDrawer\",attrs:{\"direction\":'right',\"exist\":true}},[_c('CartDisplay')],1),_c('b-modal',{attrs:{\"active\":_vm.showLoginWindow,\"scroll\":\"keep\"}},[_c('LoginWindow')],1),_c('b-loading',{attrs:{\"is-full-page\":true,\"active\":_vm.displayLoading,\"can-cancel\":false},on:{\"update:active\":function($event){_vm.displayLoading=$event}}}),(_vm.$whitelabel.awinId)?_c('Awin'):_vm._e(),(_vm.$whitelabel.adcell)?_c('Adcell'):_vm._e(),_c('script',{attrs:{\"type\":\"application/ld+json\"},domProps:{\"innerHTML\":_vm._s(_vm.snippedData)}})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c(_vm.component,{tag:\"component\",staticClass:\"navigation-wrapper is-hidden-print\"})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.$whitelabel.short.toLowerCase() !== 'adac')?_c('nav',{staticClass:\"navbar\",class:{'is-fixed-top': _vm.$whitelabel.fixedNavbar},attrs:{\"role\":\"navigation\",\"aria-label\":\"main navigation\"}},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"navbar-brand\"},[(_vm.$whitelabel.short.toLowerCase() !== 'greenstorm')?_c('router-link',{staticClass:\"navbar-item\",attrs:{\"to\":{name: 'home'},\"aria-label\":\"Homepage\"},nativeOn:{\"click\":function($event){return _vm.resetSearchAndLoadProducts($event)}}},[(_vm.$whitelabel.showHeaderLogo)?_c('img',{staticClass:\"navbar-brand__logo\",attrs:{\"importance\":\"high\",\"src\":_vm.$whitelabel.logoHeader,\"alt\":_vm.$whitelabel.storeName}}):_vm._e(),(!_vm.$whitelabel.showHeaderLogo && _vm.$whitelabel.short.toLowerCase() !== 'urlaubsguru')?_c('span',{staticClass:\"is-hidden-touch\"},[_c('b-icon',{attrs:{\"icon\":\"search\",\"size\":\"is-small\"}}),_vm._v(\" \"+_vm._s(_vm.$t('general.find-vacation')))],1):_vm._e(),(!_vm.$whitelabel.showHeaderLogo && _vm.$whitelabel.short.toLowerCase() === 'urlaubsguru')?_c('span',{staticClass:\"is-hidden-touch\"},[_c('b-icon',{attrs:{\"icon\":\"home\",\"size\":\"is-small\"}}),_vm._v(\" Urlaubsgutscheine - bis zu 70% günstiger\")],1):_vm._e()]):_vm._e(),(_vm.$whitelabel.short.toLowerCase() == 'greenstorm')?_c('div',{staticClass:\"navbar-item is-block\"},[_c('router-link',{attrs:{\"to\":{name: 'home'},\"aria-label\":\"Homepage\"},nativeOn:{\"click\":function($event){return _vm.resetSearchAndLoadProducts($event)}}},[(_vm.$whitelabel.showHeaderLogo)?_c('img',{staticClass:\"navbar-brand__logo is-block\",attrs:{\"importance\":\"high\",\"src\":_vm.$whitelabel.logoHeader,\"alt\":_vm.$whitelabel.storeName}}):_vm._e(),(!_vm.$whitelabel.showHeaderLogo)?_c('span',{staticClass:\"is-hidden-touch\"},[_c('b-icon',{attrs:{\"icon\":\"search\",\"size\":\"is-small\"}}),_vm._v(\" \"+_vm._s(_vm.$t('general.find-vacation')))],1):_vm._e()]),_c('div',{staticClass:\"has-text-centered is-hidden-touch\"},[_c('a',{attrs:{\"href\":\"https://greenstorm.eu/\",\"title\":\"zurück zur Hauptseite\"}},[_c('b-icon',{attrs:{\"icon\":\"chevron-left\"}}),_vm._v(\"zurück zur Hauptseite\")],1)])],1):_vm._e(),(!_vm.pendingContent && _vm.home.length == 0)?_c('div',{staticClass:\"navbar-item is-hidden-desktop\"},[_c('router-link',{attrs:{\"to\":{name: 'home'}}},[_c('b-icon',{attrs:{\"icon\":\"search\",\"size\":\"is-small\"}}),_vm._v(\" \"),_c('span',{staticClass:\"sr-only\"},[_vm._v(_vm._s(_vm.$t('general.find-vacation')))])],1)],1):_vm._e(),(!_vm.pendingContent && _vm.home.length > 0)?_c('div',{staticClass:\"navbar-item is-hidden-desktop\"},[(!_vm.pendingContent && _vm.home.length > 0)?_c('router-link',{attrs:{\"to\":{name: 'search'}}},[_c('b-icon',{attrs:{\"icon\":\"search\",\"size\":\"is-small\"}}),_vm._v(\" \"),_c('span',{staticClass:\"sr-only\"},[_vm._v(_vm._s(_vm.$t('general.find-vacation')))])],1):_vm._e()],1):_vm._e(),_c('div',{staticClass:\"navbar-item is-hidden-desktop\"},[_c('router-link',{attrs:{\"to\":{\n name: 'userorders',\n }}},[(!_vm.hasUser)?_c('b-icon',{attrs:{\"icon\":\"user\",\"size\":\"is-small\"}}):_vm._e(),(_vm.hasUser)?_c('b-icon',{attrs:{\"icon\":\"user-cog\",\"size\":\"is-small\"}}):_vm._e(),_c('span',{staticClass:\"sr-only\"},[_vm._v(\"Account\")])],1)],1),_c('div',{staticClass:\"navbar-item is-hidden-desktop is-relative nav-item-cart--mobile\"},[_c('a',{on:{\"click\":_vm.handleToggleDrawer}},[_c('b-icon',{attrs:{\"icon\":\"shopping-cart\",\"size\":\"is-small\"}}),_vm._v(\" \"),(_vm.itemCount > 0)?_c('small',{staticClass:\"cart-count has-background-danger has-text-white has-text-weight-bold is-size-7\"},[_vm._v(\" \"+_vm._s(_vm.itemCount)+\" \")]):_vm._e(),_c('span',{staticClass:\"sr-only\"},[_vm._v(_vm._s(_vm.$t('general.your-cart')))])],1)]),_c('a',{staticClass:\"navbar-burger burger\",class:{'is-active': _vm.showMobileNav},attrs:{\"role\":\"button\",\"aria-label\":\"menu\",\"aria-expanded\":\"false\",\"data-target\":\"mainNavBar\"},on:{\"click\":_vm.toggleMobileNav}},[_c('span',{attrs:{\"aria-hidden\":\"true\"}}),_c('span',{attrs:{\"aria-hidden\":\"true\"}}),_c('span',{attrs:{\"aria-hidden\":\"true\"}})])],1),_c('div',{staticClass:\"navbar-menu\",class:{'is-active': _vm.showMobileNav},attrs:{\"id\":\"mainNavBar\"}},[_c('div',{staticClass:\"navbar-start\"},[(!_vm.pendingContent && _vm.home.length > 0 && !_vm.$whitelabel.isStandalone)?_c('router-link',{staticClass:\"navbar-item is-hidden-touch\",attrs:{\"to\":{name: 'search'}}},[_c('b-icon',{attrs:{\"icon\":\"search\",\"size\":\"is-small\"}}),_vm._v(\" \"+_vm._s(_vm.$t('general.find-vacation'))+\" \")],1):_vm._e(),(!_vm.pendingContent && _vm.home.length > 0 && _vm.$whitelabel.isStandalone)?_c('router-link',{staticClass:\"navbar-item is-hidden-touch\",attrs:{\"to\":{name: 'search'}}},[_c('b-icon',{attrs:{\"icon\":\"search\",\"size\":\"is-small\"}}),_vm._v(\" \"+_vm._s(_vm.$t('general.find-vacation')))],1):_vm._e(),_c('div',{staticClass:\"navbar-item has-dropdown is-hoverable\"},[_c('a',{staticClass:\"navbar-link\",on:{\"click\":function($event){return _vm.toggleSubNavItem('countries')}}},[_vm._v(_vm._s(_vm.$t('general.travel-destinations')))]),_c('div',{staticClass:\"navbar-dropdown\",attrs:{\"data-subnav\":\"countries\"}},[_vm._l((_vm.menu.countries),function(item){return _c('router-link',{key:item.key,staticClass:\"navbar-item\",attrs:{\"to\":{\n name: 'search-by-country',\n params: {\n iso: item.key,\n country: _vm.$t((\"countries.\" + (item.key))),\n },\n }},nativeOn:{\"click\":function($event){return _vm.resetSearch($event)}}},[_c('span',{staticClass:\"is-block\",on:{\"click\":function($event){return _vm.toggleMobileNav()}}},[_vm._v(_vm._s(_vm.$t((\"countries.\" + (item.key)))))])])}),_c('router-link',{staticClass:\"navbar-item\",attrs:{\"to\":{name: 'hotel-map'}}},[_vm._v(_vm._s(_vm.$t(\"general.map\")))])],2)]),_c('div',{staticClass:\"navbar-item has-dropdown is-hoverable\"},[_c('a',{staticClass:\"navbar-link\",on:{\"click\":function($event){return _vm.toggleSubNavItem('themes')}}},[_vm._v(_vm._s(_vm.$t('general.themes')))]),_c('div',{staticClass:\"navbar-dropdown\",attrs:{\"data-subnav\":\"themes\"}},_vm._l((_vm.menu.themes),function(item){return _c('router-link',{key:item.key,staticClass:\"navbar-item\",attrs:{\"to\":{\n name: 'search-by-theme',\n params: {\n id: item.key,\n name: _vm.$options.filters.removeSpecialChars(item.value),\n },\n }},nativeOn:{\"click\":function($event){return _vm.resetSearch($event)}}},[_c('span',{staticClass:\"is-block\",on:{\"click\":function($event){return _vm.toggleMobileNav()}}},[_vm._v(_vm._s(item.value))])])}),1)]),(_vm.$whitelabel.short.toLowerCase() === 'ooesb' && _vm.hasPromotionDeal)?_c('div',{staticClass:\"navbar-item\"},[_c('router-link',{staticClass:\"navbar-item\",attrs:{\"to\":{name: 'bargain'}}},[_vm._v(\"Schnäppchen\")])],1):_vm._e(),(_vm.$whitelabel.short.toLowerCase() == 'greenstorm')?_c('div',{staticClass:\"navbar-item is-hidden-desktop\"},[_c('a',{attrs:{\"href\":\"https://greenstorm.eu/\",\"title\":\"zurück zur Hauptseite\"}},[_c('b-icon',{attrs:{\"icon\":\"chevron-left\"}}),_vm._v(\"zurück zur Hauptseite\")],1)]):_vm._e()],1),_c('div',{staticClass:\"navbar-end \"},[(_vm.$whitelabel.supportPhone)?_c('div',{staticClass:\"navbar-item has-text-weight-bold\"},[_c('a',{attrs:{\"href\":(\"tel:\" + (_vm.$whitelabel.supportMail))}},[_c('b-icon',{attrs:{\"icon\":\"phone\",\"size\":\"is-small\",\"custom-class\":\"fa-flip-horizontal\"}}),_vm._v(\" \"+_vm._s(_vm.$whitelabel.supportPhone)+\" \")],1)]):_vm._e(),(_vm.$whitelabel.supportMail)?_c('div',{staticClass:\"navbar-item has-text-weight-bold\"},[_c('a',{attrs:{\"href\":(\"mailto:\" + (_vm.$whitelabel.supportMail))}},[_c('b-icon',{attrs:{\"icon\":\"envelope\",\"size\":\"is-small\"}}),_vm._v(\" \"+_vm._s(_vm.$whitelabel.supportMail)+\" \")],1)]):_vm._e(),_c('div',{staticClass:\"navbar-item is-hidden-touch\"},[_c('router-link',{attrs:{\"to\":{\n name: 'userorders',\n }}},[(!_vm.hasUser)?_c('b-icon',{attrs:{\"icon\":\"user\",\"size\":\"is-small\"}}):_vm._e(),(_vm.hasUser)?_c('b-icon',{attrs:{\"icon\":\"user-cog\",\"size\":\"is-small\"}}):_vm._e(),_c('span',{staticClass:\"sr-only\"},[_vm._v(\"Account\")])],1)],1),_c('div',{staticClass:\"navbar-item is-relative is-hidden-touch\"},[_c('a',{on:{\"click\":_vm.handleToggleDrawer}},[_c('b-icon',{attrs:{\"icon\":\"shopping-cart\",\"size\":\"is-small\"}}),_vm._v(\" \"),(_vm.itemCount > 0)?_c('small',{staticClass:\"cart-count has-background-danger has-text-white has-text-weight-bold is-size-7\"},[_vm._v(\" \"+_vm._s(_vm.itemCount)+\" \")]):_vm._e(),_c('span',{staticClass:\"sr-only\"},[_vm._v(_vm._s(_vm.$t('general.your-cart')))])],1)]),(_vm.devMode === 'development' || _vm.$whitelabel.short.toLowerCase() == 'whitelabelapi' || _vm.$whitelabel.locales != undefined)?_c('div',{staticClass:\"navbar-item\"},[_c('b-field',[_c('b-select',_vm._g({model:{value:(_vm.selectedLocale),callback:function ($$v) {_vm.selectedLocale=$$v},expression:\"selectedLocale\"}},_vm.selectedLocale.set),_vm._l((_vm.options),function(option){return _c('option',{key:option.value,domProps:{\"value\":option.value}},[_vm._v(_vm._s(option.text))])}),0)],1)],1):_vm._e()])])])]):_vm._e(),_c('b-modal',{attrs:{\"active\":_vm.isComponentModalActive,\"full-screen\":\"\",\"custom-class\":\"search-modal\"},on:{\"update:active\":function($event){_vm.isComponentModalActive=$event}}},[_c('MainSearch',{on:{\"search-completed\":_vm.closeSearchModal}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"columns is-vcentered is-mobile search-columns\"},[_c('div',{staticClass:\"column is-three-quarters is-three-fifths-desktop is-half-widescreen\"},[_c('b-field',[_c('b-input',{staticClass:\"is-size-3 is-size-1-desktop has-text-white\",attrs:{\"placeholder\":_vm.$t('search.placeholder'),\"type\":\"search\",\"icon\":\"search\",\"custom-class\":\"is-size-3 is-size-1-desktop search-input\",\"autofocus\":\"\"},nativeOn:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }return _vm.submit($event)}},model:{value:(_vm.searchInput),callback:function ($$v) {_vm.searchInput=$$v},expression:\"searchInput\"}})],1)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainSearch.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainSearch.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MainSearch.vue?vue&type=template&id=8054161c&\"\nimport script from \"./MainSearch.vue?vue&type=script&lang=js&\"\nexport * from \"./MainSearch.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MainSearch.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_Navigation.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_Navigation.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./_Navigation.vue?vue&type=template&id=21d4f8a2&\"\nimport script from \"./_Navigation.vue?vue&type=script&lang=js&\"\nexport * from \"./_Navigation.vue?vue&type=script&lang=js&\"\nimport style0 from \"./_Navigation.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.$whitelabel.showHeader)?_c('div',[(_vm.$whitelabel.short.toLowerCase() === 'adac')?_c('nav',{staticClass:\"navbar u-flex-wrap u-w100vw\",class:{'is-fixed-top': _vm.$whitelabel.fixedNavbar},attrs:{\"role\":\"navigation\",\"aria-label\":\"main navigation\"}},[_c('div',{staticClass:\"navbar--firstrow is-hidden-touch\"},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"navbar-menu\"},[_c('div',{staticClass:\"navbar-start\"},[_c('router-link',{staticClass:\"navbar-item\",attrs:{\"to\":\"/\"}},[(_vm.$whitelabel.showHeaderLogo)?_c('img',{staticClass:\"navbar-brand__logo\",attrs:{\"importance\":\"high\",\"src\":_vm.$whitelabel.logoHeader,\"alt\":_vm.$whitelabel.storeName},on:{\"click\":_vm.resetSearch}}):_vm._e(),(!_vm.$whitelabel.showHeaderLogo)?_c('span',{on:{\"click\":_vm.resetSearch}},[_vm._v(\"Suche\")]):_vm._e()])],1),_c('div',{staticClass:\"navbar-end\"},[(_vm.$whitelabel.supportPhone)?_c('div',{staticClass:\"navbar-item has-text-weight-bold\"},[_c('a',{attrs:{\"href\":(\"tel:\" + (_vm.$whitelabel.supportMail))}},[_c('b-icon',{attrs:{\"icon\":\"phone\",\"size\":\"is-small\",\"custom-class\":\"fa-flip-horizontal\"}}),_vm._v(\" \"+_vm._s(_vm.$whitelabel.supportPhone))],1)]):_vm._e(),(_vm.$whitelabel.supportMail)?_c('div',{staticClass:\"navbar-item has-text-weight-bold\"},[_c('a',{attrs:{\"href\":(\"mailto:\" + (_vm.$whitelabel.supportMail))}},[_c('b-icon',{attrs:{\"icon\":\"envelope\",\"size\":\"is-small\"}}),_vm._v(\" \"+_vm._s(_vm.$whitelabel.supportMail))],1)]):_vm._e()])])])]),_c('div',{staticClass:\"container navbar--secondrow\"},[_c('div',{staticClass:\"navbar-brand \"},[_c('router-link',{staticClass:\"navbar-item is-hidden-desktop\",attrs:{\"to\":\"/\",\"aria-label\":\"Startseite\"}},[_c('div',{staticClass:\"is-size-7\"},[(_vm.$whitelabel.showHeaderLogo)?_c('img',{staticClass:\"navbar-brand__logo\",attrs:{\"src\":_vm.$whitelabel.logoHeader,\"alt\":_vm.$whitelabel.storeName},on:{\"click\":_vm.resetSearch}}):_vm._e()])]),_c('div',{staticClass:\"navbar-item has-text-weight-semibold is-hidden-touch ml-2\"}),_c('div',{staticClass:\"navbar-item is-hidden-desktop\"},[_c('a',{staticClass:\"has-text-black\",on:{\"click\":function($event){_vm.isComponentModalActive = true}}},[_c('b-icon',{attrs:{\"icon\":\"search\",\"size\":\"is-small\"}})],1)]),_c('div',{staticClass:\"navbar-item is-hidden-desktop\"},[_c('router-link',{attrs:{\"to\":{\n name: 'account',\n }}},[(!_vm.hasUser)?_c('b-icon',{attrs:{\"icon\":\"user\",\"size\":\"is-small\"}}):_vm._e(),(_vm.hasUser)?_c('b-icon',{attrs:{\"icon\":\"user-cog\",\"size\":\"is-small\"}}):_vm._e()],1)],1),_c('div',{staticClass:\"navbar-item is-hidden-desktop\"},[_c('a',{staticClass:\"has-text-black\",on:{\"click\":_vm.handleToggleDrawer}},[_c('b-icon',{attrs:{\"icon\":\"shopping-cart\",\"size\":\"is-small\"}}),_vm._v(\" \"),(_vm.itemCount > 0)?_c('small',{staticClass:\"cart-count has-background-danger has-text-white has-text-weight-bold is-size-7\"},[_vm._v(\" \"+_vm._s(_vm.itemCount)+\" \")]):_vm._e()],1)]),_c('div',{staticClass:\"navbar-item is-hidden-desktop\"},[_c('a',{staticClass:\"navbar-burger burger\",class:{'is-active': _vm.showMobileNav},attrs:{\"role\":\"button\",\"aria-label\":\"menu\",\"aria-expanded\":\"false\",\"data-target\":\"mainNavBar\"},on:{\"click\":_vm.toggleMobileNav}},[_c('span',{attrs:{\"aria-hidden\":\"true\"}}),_c('span',{attrs:{\"aria-hidden\":\"true\"}}),_c('span',{attrs:{\"aria-hidden\":\"true\"}})])])],1),_c('div',{staticClass:\"navbar-menu\",class:{'is-active': _vm.showMobileNav},attrs:{\"id\":\"mainNavBar\"}},[_c('div',{staticClass:\"navbar-end\"},[_c('a',{staticClass:\"navbar-item has-text-black is-hidden-touch\",attrs:{\"aria-label\":\"Startseite\"},on:{\"click\":_vm.resetSearch}},[_c('b-icon',{attrs:{\"icon\":\"home\",\"size\":\"is-small\"}}),_vm._v(\" Startseite \")],1),_c('a',{staticClass:\"navbar-item is-hidden-touch has-text-black\",on:{\"click\":function($event){_vm.isComponentModalActive = true}}},[_c('b-icon',{attrs:{\"icon\":\"search\",\"size\":\"is-small\"}}),_vm._v(\" Urlaub finden \")],1),_c('div',{staticClass:\"navbar-item has-dropdown is-hoverable\"},[_c('a',{staticClass:\"navbar-link\",on:{\"click\":function($event){return _vm.toggleSubNavItem('countries')}}},[_vm._v(_vm._s(_vm.$t('general.travel-destinations')))]),_c('div',{staticClass:\"navbar-dropdown\",attrs:{\"data-subnav\":\"countries\"}},_vm._l((_vm.menu.countries),function(item){return _c('router-link',{key:item.key,staticClass:\"navbar-item\",attrs:{\"to\":{\n name: 'search-by-country',\n params: {\n iso: item.key,\n country: _vm.$options.filters.removeSpecialChars(item.value),\n },\n }}},[_c('span',{staticClass:\"is-block\",on:{\"click\":function($event){return _vm.toggleMobileNav()}}},[_vm._v(_vm._s(item.value))])])}),1)]),_c('div',{staticClass:\"navbar-item has-dropdown is-hoverable\"},[_c('a',{staticClass:\"navbar-link\",on:{\"click\":function($event){return _vm.toggleSubNavItem('themes')}}},[_vm._v(\"Themen\")]),_c('div',{staticClass:\"navbar-dropdown\",attrs:{\"data-subnav\":\"themes\"}},_vm._l((_vm.menu.themes),function(item){return _c('router-link',{key:item.key,staticClass:\"navbar-item\",attrs:{\"to\":{\n name: 'search-by-theme',\n params: {\n id: item.key,\n name: _vm.$options.filters.removeSpecialChars(item.value),\n },\n }}},[_c('span',{staticClass:\"is-block\",on:{\"click\":function($event){return _vm.toggleMobileNav()}}},[_vm._v(_vm._s(item.value))])])}),1)]),_c('div',{staticClass:\"navbar-item is-hidden-touch\"},[_c('router-link',{attrs:{\"to\":{\n name: 'userorders',\n }}},[(!_vm.hasUser)?_c('b-icon',{attrs:{\"icon\":\"user\",\"size\":\"is-small\"}}):_vm._e(),(_vm.hasUser)?_c('b-icon',{attrs:{\"icon\":\"user-cog\",\"size\":\"is-small\"}}):_vm._e()],1)],1),_c('a',{staticClass:\"has-text-black navbar-item is-hidden-touch\",on:{\"click\":_vm.handleToggleDrawer}},[_c('b-icon',{attrs:{\"icon\":\"shopping-cart\",\"size\":\"is-small\"}}),_vm._v(\" \"),(_vm.itemCount > 0)?_c('small',{staticClass:\"cart-count has-background-danger has-text-white has-text-weight-bold is-size-7\"},[_vm._v(\" \"+_vm._s(_vm.itemCount)+\" \")]):_vm._e()],1)])])])]):_vm._e(),_c('b-modal',{attrs:{\"active\":_vm.isComponentModalActive,\"full-screen\":\"\",\"custom-class\":\"search-modal\"},on:{\"update:active\":function($event){_vm.isComponentModalActive=$event}}},[_c('MainSearch',{on:{\"search-completed\":_vm.closeSearchModal}})],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Adac.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Adac.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Adac.vue?vue&type=template&id=03c74b78&\"\nimport script from \"./Adac.vue?vue&type=script&lang=js&\"\nexport * from \"./Adac.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Adac.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Navigation.vue?vue&type=template&id=761a22ca&\"\nimport script from \"./Navigation.vue?vue&type=script&lang=js&\"\nexport * from \"./Navigation.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.$whitelabel.showHeader)?_c('div',[_c('section',{staticClass:\"hero hero-about__wrapper hero-header has-background-grey-light has-no-background-print\",style:(_vm.cssProps)},[_c('div',{staticClass:\"hero-body has-text-centered\"},[_c('h1',{staticClass:\"title title--hero mb-5 is-size-2\",domProps:{\"innerHTML\":_vm._s(_vm.$whitelabel.heroTitle)}}),_c('h2',{staticClass:\"subtitle is-size-7 has-text-weight-bold\"},[(!_vm.$whitelabel.poweredByText)?_c('span',[_vm._v(\"powered by\")]):_vm._e(),(_vm.$whitelabel.poweredByText)?_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.$whitelabel.poweredByText)}}):_vm._e(),_c('img',{staticClass:\"subtitle-img\",attrs:{\"src\":'https://assets.urlaubsgutschein.kaufen/whitelabel/we-are.travel.svg',\"alt\":\"we-are.travel\",\"fetchpriority\":\"high\",\"width\":\"351\",\"height\":\"70\"}})]),(_vm.$whitelabel.heroInfoText)?_c('p',{staticClass:\"hero-subtext is-hidden-touch\"},[_c('span',{staticClass:\"hero-subtext-content has-background-white\",domProps:{\"innerHTML\":_vm._s(_vm.$whitelabel.heroInfoText)}})]):_vm._e(),_c('HeroBadge')],1)])]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeroInfoStandalone.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeroInfoStandalone.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./HeroInfoStandalone.vue?vue&type=template&id=7652ff66&scoped=true&\"\nimport script from \"./HeroInfoStandalone.vue?vue&type=script&lang=js&\"\nexport * from \"./HeroInfoStandalone.vue?vue&type=script&lang=js&\"\nimport style0 from \"./HeroInfoStandalone.vue?vue&type=style&index=0&id=7652ff66&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7652ff66\",\n null\n \n)\n\nexport default component.exports","
\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 \r\n
\r\n
\r\n
\r\n {{ $t('consent.policy1') }}\r\n {{ $t('consent.policy2') }}\r\n
\r\n
\r\n
\r\n {{ $t('consent.allow_cookies') }}\r\n {{ $t('consent.just_necessary_cookies') }}\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\r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--12-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--12-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=71116a8c&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","/* eslint-disable no-console */\n\nimport { register } from 'register-service-worker'\n\nif (process.env.NODE_ENV === 'production') {\n register(`${process.env.BASE_URL}service-worker.js`, {\n ready() {\n console.log(\n 'App is being served from cache by a service worker.\\n' +\n 'For more details, visit https://goo.gl/AFskqB'\n )\n },\n registered(registration) {\n // eslint-disable-next-line no-undef\n console.log('Service worker has been registered.', RUNNING_VERSION)\n setInterval(() => {\n registration.update();\n }, 1000 * 60 * 60 * 24);\n },\n \n cached() {\n console.log('Content has been cached for offline use.')\n },\n updatefound() {\n console.log('New content is downloading.')\n },\n updated(registration) {\n // eslint-disable-next-line no-undef\n console.log('Loading ', RUNNING_VERSION)\n document.dispatchEvent(\n new CustomEvent('swUpdated', { detail: registration })\n );\n },\n offline() {\n console.log('No internet connection found. App is running in offline mode.')\n },\n error(error) {\n console.error('Error during service worker registration:', error)\n }\n })\n}\n","import axios from 'axios';\r\nimport store from '@/store/index'\r\nimport { ToastProgrammatic as Toast } from 'buefy'\r\nimport {getDomain } from './backend'\r\nimport i18n from '@/i18n'\r\nexport default function setup() {\r\n // before any request\r\n axios.interceptors.request.use(config => {\r\n if (!config._silent && !store.getters.disableSite) {\r\n store.dispatch(\"lockSite\");\r\n }\r\n //only add auth header to backend calls\r\n if(config.url.startsWith(getDomain())){\r\n const token = store.getters.token\r\n if (token != null && token.token) {\r\n let expiryDate = new Date(token.expiry)\r\n if (config.url && !config.url.includes('auth/connect/refresh')) {\r\n expiryDate.setMinutes(expiryDate.getMinutes() - 10)\r\n }\r\n if (expiryDate < new Date()) {\r\n store.dispatch('refreshToken')\r\n }\r\n if (store.getters.token.token) {\r\n config.headers.Authorization = `Bearer ${store.getters.token.token}`\r\n }\r\n \r\n }\r\n if(store.getters.locale){\r\n config.headers[\"x-lang\"] = store.getters.locale\r\n }\r\n }\r\n\r\n return config\r\n })\r\n\r\n\r\n function errorResponseHandler(error) {\r\n // if has response show the error\r\n const originalRequest = error.config;\r\n const isRetry = originalRequest._retry;\r\n if (!originalRequest._retry) {\r\n originalRequest._retry = true;\r\n }\r\n\r\n if (!isRetry && (!error.response || !error.response.status)) {\r\n Toast.open(i18n.t('errors.no-connection'));\r\n if (store.getters.disableSite) {\r\n store.dispatch(\"unlockSite\");\r\n }\r\n }\r\n if (error.response) {\r\n if (error.response.data) {\r\n if (error.response.status == 410\r\n && error.response.data.type == \"https://touristik-vertrieb.at/invalid-order\") {\r\n //needs to reset local storage\r\n store.dispatch(\"clearCart\");\r\n if (error.request && error.request.responseURL.includes('api/order/items')) {\r\n //was add call, retry\r\n return store.dispatch('addProduct', JSON.parse(error.config.data).variantId);\r\n }\r\n }\r\n if (error.response.status == 401 && error.response.data.extensions.errorCode == 101) {\r\n store.dispatch(\"showLogin\");\r\n // eslint-disable-next-line no-unused-vars\r\n return new Promise((resolve,_reject) => {\r\n const unsubscribe = store.subscribe(mutation => {\r\n if (mutation.type == 'ACCESS_TOKEN_UPDATED') {\r\n error.config.headers.Authorization = `Bearer ${mutation.payload.token}`\r\n resolve(axios.request(error.config))\r\n unsubscribe();\r\n \r\n }\r\n })\r\n })\r\n \r\n }\r\n if (error.response.status == 428 && error.response.data.extensions.errorCode == 115) {\r\n store.dispatch(\"clearCart\");\r\n }\r\n }\r\n }\r\n\r\n if (store.getters.disableSite) {\r\n store.dispatch(\"unlockSite\");\r\n }\r\n return Promise.reject({ ...error })\r\n }\r\n\r\n\r\n // after any request\r\n axios.interceptors.response.use(response => {\r\n\r\n if (store.getters.disableSite) {\r\n store.dispatch(\"unlockSite\");\r\n }\r\n return response\r\n },\r\n errorResponseHandler);\r\n}","import Vue from 'vue';\r\nVue.filter('currency', function (value) {\r\n if (!value) return '';\r\n value = value.toString();\r\n switch (value) {\r\n case 'EUR': return '€';\r\n case 'USD': return '$';\r\n default: return value;\r\n }\r\n});","import Vue from 'vue';\r\nimport i18n from '@/i18n'\r\nVue.filter('country', function (value) {\r\n if (!value) return '';\r\n value = value.toString();\r\n return i18n.t('countries.' + value)\r\n})","import Vue from 'vue';\r\nimport store from '@/store/index';\r\nVue.filter('theme', function (value) {\r\n if (!value) return '';\r\n let item = store.getters.menu.themes.find( f=> f.key == value);\r\n if(item) return item.value;\r\n return '';\r\n});","import Vue from 'vue';\r\nimport i18n from '@/i18n'\r\nVue.filter('gender', function (value) {\r\n if (!value) return '';\r\n value = value.toString();\r\n switch (value) {\r\n case '10': return i18n.t('general.male');\r\n case '20': return i18n.t('general.female');\r\n default: return i18n.t('general.female') + \" / \" + i18n.t('general.male');\r\n }\r\n});","import Vue from 'vue'\r\nVue.filter('amount', function(value) {\r\n if (!value) return '0,00'\r\n value = parseFloat(value)\r\n if (isNaN(value)) return '-,--'\r\n return value\r\n .toFixed(2)\r\n .replace('.', ',')\r\n .replace(/\\d(?=(\\d{3}))/g, '$&.')\r\n .replace(',00', ',-')\r\n //return value.toFixed(2).replace('.', ',').replace(',00', ',-');\r\n})\r\n","import Vue from 'vue';\r\n\r\nVue.filter('capitalize', function (value) {\r\n if (!value) {\r\n return ''\r\n } \r\n \r\n value = value.toString();\r\n return value.charAt(0).toUpperCase() + value.slice(1);\r\n})","import Vue from 'vue'\r\n\r\nVue.filter('removeSpecialChars', function(value) {\r\n return removeSpecialChars(value)\r\n})\r\n\r\nexport const removeSpecialChars = value => {\r\n if (!value) {\r\n return ''\r\n }\r\n\r\n value = value.toString()\r\n return (\r\n value\r\n //.trimRight()\r\n .toLowerCase()\r\n .replace(/ö+/g, 'oe')\r\n .replace(/ü+/g, 'ue')\r\n .replace(/ä+/g, 'ae')\r\n // .normalize('NFD')\r\n // .replace(/[\\u0300-\\u036f]/g, '') //umlaute ä > a\r\n .replace(/&+/g, 'und') //&\r\n .replace(/ß+/g, 'ss') //&\r\n .replace(/\\s+/g, '-')\r\n .trim()\r\n )\r\n}\r\n","import Vue from 'vue'\r\nimport promotion from '@/common/promotion'\r\n\r\nVue.filter('haspromotion', function(value, name) {\r\n if (!value) return false\r\n return promotion.hasActivePromotion(name, value)\r\n})\r\n\r\nVue.filter('promotiontimer', function(value, name) {\r\n if (!value) return null\r\n\r\n if (promotion.hasActivePromotion(name, value)) {\r\n const cdDate = promotion.getEndDateForPromotion(name, value)\r\n if (cdDate) {\r\n this.dealEndtime = cdDate - new Date()\r\n }\r\n }\r\n return null\r\n})\r\n\r\nVue.filter('hasanypromotion', function(value) {\r\n //exclude offers with insurance an no other promotion\r\n if (\r\n promotion.count(value) == 1 &&\r\n promotion.hasActivePromotion('InsuranceIncluded', value)\r\n ) {\r\n return false\r\n }\r\n\r\n return promotion.hasAnyPromotion(value)\r\n})\r\n\r\n// Vue.filter('hasinsuranceonly', function(value) {\r\n// return (\r\n// promotion.count(value) == 1 &&\r\n// promotion.hasActivePromotion('InsuranceIncluded', value)\r\n// )\r\n// })\r\n","import Vue from 'vue';\nimport i18n from '@/i18n'\nVue.filter('pricePrefixAbbr', function (value) {\n if (!value) {\n return ''\n } \n \n switch(value.toLowerCase()){\n case i18n.t('general.per-person-only'):\n return i18n.t('general.per-person-only-abrev');\n default:\n return value;\n }\n})","import { \n Order_AffiliateSummary as aff\n\n} from \"./backend\"\n\n\nconst affiliateSummary = async (id,key) => {\n let { data } = await aff({\n id: id,\n key: key\n });\n return data;\n}\n\nexport default { affiliateSummary };","import Api from '@/api/affiliate-api'\nimport { createLogger } from '@/common/log'\nconst logger = createLogger(\"AWIN\", \"\", false)\n\nconst timestamp = new Date().getTime()\nconst awinScript = awinId => `https://www.dwin1.com/${awinId}.js?v=${timestamp}`\nlet awinObject = {}\n\nconst loadScript = (url, defer) => {\n return new Promise((resolve, reject) => {\n const head = document.head || document.getElementsByTagName('head')[0]\n const script = document.createElement('script')\n script.async = true\n script.src = url\n script.id = 'awin-js'\n script.charset = 'utf-8'\n if (defer) {\n script.setAttribute('defer', 'defer')\n }\n head.appendChild(script)\n script.onload = resolve\n script.onerror = reject\n })\n}\n\nconst rerunScript = () => {\n awinObject.internal.Tracking.run()\n}\n\nconst sendUsingImgFallback = url => {\n let awinFallbackImg = document.createElement('img')\n awinFallbackImg.id = 'awinFallbackImg'\n awinFallbackImg.border = 0\n awinFallbackImg.height = 0\n awinFallbackImg.width = 0\n awinFallbackImg.style = 'display:none'\n awinFallbackImg.src = url\n awinFallbackImg.onload = () => {\n //remove it after it has been loaded\n setTimeout(() => {\n awinFallbackImg.remove()\n }, 500)\n }\n document.body.appendChild(awinFallbackImg)\n}\n\nconst mapProducts = function getOrderProducts(products) {\n if(!products) {\n return []\n }\n if (products.length > 0 && products[0].price) {\n return products.map(product => {\n return {\n identifier: `${product.id}`,\n amount: `${product.price.total}`,\n currency: `${product.price.currency}`,\n quantity: '1',\n }\n })\n }\n return products.map(product => {\n return {\n identifier: `${product.id}`,\n amount: `${product.unitPrice}`,\n currency: `${product.currency}`,\n quantity: `${product.quantity}`,\n }\n })\n}\n\nconst knownVars = [\n 'pagetype',\n 'products',\n 'language',\n 'transaction',\n 'total_amount',\n 'total_currency',\n 'search_query',\n 'identifier',\n 'category',\n 'description',\n 'amount',\n 'price',\n 'image1',\n 'url',\n]\n\nconst redeclare = vars => {\n for (let known of knownVars) {\n window['awin_' + known] = undefined\n }\n for (let v in vars) {\n window['awin_' + v] = vars[v]\n }\n}\n\nconst awinOperations = (awin, id) => {\n return {\n setConversionTag: async (cartId, token) => {\n // try {\n //according to docu https://wiki.awin.com/index.php/Advertiser_Tracking_Guide/Standard_Implementation\n // see Example #2, conversion after mastertag\n\n const summaryData = await Api.affiliateSummary(cartId, token)\n let parts = 'DEFAULT'\n if (summaryData.usedReduction) {\n parts = 'VOUCHER'\n } else if (summaryData.customer == 0) {\n //customer state 0 = new customer\n parts = 'NEW'\n } else {\n //customer state 1 = returning customer\n parts = 'EXISTING'\n }\n\n awin.Tracking.Sale = {}\n awin.Tracking.Sale.amount = summaryData.total.toFixed(2)\n awin.Tracking.Sale.channel = 'aw'\n awin.Tracking.Sale.orderRef = `${summaryData.id}`\n awin.Tracking.Sale.parts = parts + ':' + summaryData.total.toFixed(2)\n awin.Tracking.Sale.currency = summaryData.currency\n awin.Tracking.Sale.test = '0'\n\n awin.Tracking.run()\n\n sendUsingImgFallback(\n `https://www.awin1.com/sread.img?tt=ns&tv=2&merchant=${id}&amount=${summaryData.total}&ch=aw&parts=${parts}:${summaryData.total}&ref=${summaryData.id}&cr=${summaryData.currency}&testmode=0`,\n )\n // } catch {}\n },\n setConfirmation: (locale, total, cartId, currency, products) => {\n const zxParams = {\n pagetype: 'checkout',\n products: mapProducts(products),\n language: `${locale}`,\n transaction: `${cartId}`,\n total_amount: `${total}`,\n total_currency: `${currency}`,\n }\n redeclare(zxParams)\n rerunScript()\n },\n setCart: (locale, products) => {\n const zxParams = {\n pagetype: 'basket',\n products: mapProducts(products),\n language: `${locale}`,\n }\n redeclare(zxParams)\n rerunScript()\n },\n setHome: locale => {\n const zxParams = {\n pagetype: 'home',\n language: `${locale}`,\n }\n redeclare(zxParams)\n rerunScript()\n },\n setSearch: (products, query, locale) => {\n const zxParams = {\n pagetype: 'search',\n search_query: `${query}`,\n products: mapProducts(products),\n language: `${locale}`,\n }\n redeclare(zxParams)\n rerunScript()\n },\n setOffer: (template, url, locale) => {\n //get variant with lowest price\n let minPriceVariant = template.variants.reduce(function(prev, curr) {\n return prev.price.total < curr.price.total ? prev : curr\n })\n\n const zxParams = {\n pagetype: 'product',\n identifier: `${template.id}`,\n fn: `${template.subtitle}`,\n description: `${template.title}`,\n category: 'Urlaubsgutscheine',\n price: `${minPriceVariant.price.currency} ${minPriceVariant.price.total}`,\n amount: `${minPriceVariant.price.total}`,\n currency: `${minPriceVariant.price.currency}`,\n url: `${url}`,\n image1: `https://assets.urlaubsgutschein.kaufen/${template.image}`,\n language: `${locale}`,\n }\n\n redeclare(zxParams)\n rerunScript()\n //awin.Tracking.run()\n },\n }\n}\n\nexport default function install(Vue, options = {}) {\n logger.debug('installing awin')\n let script = loadScript(awinScript(options.awinId), false)\n script.then(\n () => {\n logger.debug('awin installed')\n const windowObject = AWIN || window.AWIN // eslint-disable-line\n if (windowObject) {\n logger.debug('awin initialized', {id: options.awinId})\n awinObject = {\n ...awinOperations(windowObject, options.awinId),\n }\n awinObject.internal = windowObject\n }\n Vue.prototype.$awin = awinObject\n },\n err => {\n logger.debug('awin NOT installed', err)\n },\n )\n}\n","import Api from '@/api/affiliate-api'\nimport { createLogger } from \"@/common/log\"\n\nconst logger = createLogger(\"adcell\", \"\", false)\nconst adcellScript = () => `https://t.adcell.com/js/trad.js`\nlet adcellObject = {}\n\n\n\nconst loadScript = (url, defer) => {\n return new Promise((resolve, reject) => {\n const head = document.head || document.getElementsByTagName('head')[0]\n const script = document.createElement('script')\n script.async = true\n script.src = url\n script.id = 'adcell-js'\n script.charset = 'utf-8'\n if (defer) {\n script.setAttribute('defer', 'defer')\n }\n head.appendChild(script)\n script.onload = resolve\n script.onerror = reject\n })\n}\n\nconst sendUsingImgFallback = url => {\n let adcellFallbackImg = document.createElement('img')\n adcellFallbackImg.id = 'adcellFallbackImg'\n adcellFallbackImg.border = 0\n adcellFallbackImg.height = 0\n adcellFallbackImg.width = 0\n adcellFallbackImg.style = 'display:none'\n adcellFallbackImg.src = url\n adcellFallbackImg.onload = () => {\n //remove it after it has been loaded\n setTimeout(() => {\n adcellFallbackImg.remove()\n }, 500)\n }\n document.body.appendChild(adcellFallbackImg)\n}\n\nconst adcellOperations = adcell => {\n return {\n setConversionTag: async (cartId, token) => {\n const summaryData = await Api.affiliateSummary(cartId, token)\n\n let adcellConversion = document.createElement('script')\n adcellConversion.id = 'adcellConversionTag'\n adcellConversion.async = true\n adcellConversion.src = `https://t.adcell.com/t/track.js?pid=${adcell.pid}&eventid=${adcell.eventid}&referenz=${summaryData.id}&betrag=${summaryData.total}`\n document.body.appendChild(adcellConversion)\n\n sendUsingImgFallback(\n `https://t.adcell.com/t/track?pid=${adcell.pid}&eventid=${adcell.eventid}&referenz=${summaryData.id}&betrag=${summaryData.total}`,\n )\n },\n rerunScript: () => {\n logger.debug('track adcell')\n adcellObject.internal.Tracking.track()\n logger.debug(adcellObject.internal)\n //Adcell.Tracking.track() // eslint-disable-line\n },\n }\n}\n\nexport default function install(Vue, options = {}) {\n logger.debug('installing adcell')\n let script = loadScript(adcellScript(), false)\n script.then(\n () => {\n logger.debug('adcell installed')\n const windowObject = Adcell || window.Adcell // eslint-disable-line\n\n if (windowObject) {\n logger.debug('adcell initialized', {id: options.adcell})\n adcellObject = {\n ...adcellOperations(options.adcell),\n }\n adcellObject.internal = windowObject\n\n adcellObject.internal.Tracking.track()\n //Adcell.Tracking.track() // eslint-disable-line\n }\n Vue.prototype.$adcell = adcellObject\n },\n err => {\n logger.debug('adcell NOT installed', err)\n },\n )\n}\n","import store from '@/store/index'\nimport router from '@/router'\n\nimport { createLogger } from './log'\n\nexport const EventTypes = Object.freeze({\n STORE: Symbol('STORE'),\n ROUTE: Symbol('ROUTE'),\n MANUAL: Symbol('MANUAL'),\n})\n\nexport const StoreEvents = Object.freeze({\n DEACTIVATE_ANALYTICS: Symbol('DEACTIVATE_ANALYTICS'),\n ACTIVATE_ANALYTICS: Symbol('ACTIVATE_ANALYTICS'),\n PRODUCT_ADDED: Symbol('PRODUCT_ADDED'),\n PRODUCT_REMOVED: Symbol('PRODUCT_REMOVED'),\n PRODUCT_UPDATED: Symbol('PRODUCT_UPDATED'),\n REDUCTION_INFO_UPDATED: Symbol('REDUCTION_INFO_UPDATED'),\n SEARCH_PRODUCTS_UPDATED: Symbol('$_search/PRODUCTS_UPDATED'),\n HOTEL_OFFER_LOADED: Symbol('$_hotel/OFFER_LOADED'),\n CHECKOUT_PAYMENT_STARTED: Symbol('$_checkout/PAYMENT_CHECKOUT_STARTED'),\n CHECKOUT_USER_DATA_UPDATED: Symbol('$_checkout/USER_DATA_UPDATED'),\n CHECKOUT_ORDER_CLOSED: Symbol('$_checkout/ORDER_CLOSED'),\n CHECKOUT_PAYMENT_SESSION_UPDATED: Symbol(\n '$_checkout/PAYMENT_SESSION_UPDATED',\n ),\n})\n\nexport const ManualEvents = Object.freeze({\n CLICKED: Symbol('CLICKED'),\n})\n\nexport const dispatcher = {\n log: undefined,\n subscribers: [],\n storeUnsubscriber: null,\n routeUnsubscriber: null,\n dispatch(event, payload) {\n this.log.print('called dispatch()', {\n event: event,\n payload: payload,\n })\n if (\n this.subscribers[EventTypes.MANUAL][event] &&\n this.subscribers[EventTypes.MANUAL][event].length > 0\n ) {\n for (const sub of this.subscribers[EventTypes.MANUAL][event]) {\n sub.action(payload)\n }\n }\n },\n setup() {\n this.log = createLogger(\"DISPATCHER\", \"📌\", false)\n this.log.print('called setup()')\n this.subscribers[EventTypes.STORE] = []\n for (const st in StoreEvents) {\n this.subscribers[EventTypes.STORE][StoreEvents[st].description] = []\n }\n this.subscribers[EventTypes.ROUTE] = []\n this.subscribers[EventTypes.MANUAL] = []\n this.subscribers[EventTypes.MANUAL][ManualEvents.CLICKED.toString()] = []\n\n this.storeUnsubscriber = store.subscribe((mutation) => {\n if (\n this.subscribers[EventTypes.STORE][mutation.type] &&\n this.subscribers[EventTypes.STORE][mutation.type].length > 0\n ) {\n for (const sub of this.subscribers[EventTypes.STORE][mutation.type]) {\n sub.action(mutation)\n }\n }\n })\n this.routeUnsubscriber = router.afterEach((to, from) => {\n if (\n this.subscribers[EventTypes.ROUTE][to.name] &&\n this.subscribers[EventTypes.ROUTE][to.name].length > 0\n ) {\n for (const sub of this.subscribers[EventTypes.ROUTE][to.name]) {\n sub.action(to, from)\n }\n }\n })\n },\n destroy() {\n this.log.print('called destroy()')\n try {\n if (this.storeUnsubscriber) {\n this.storeUnsubscriber()\n }\n if (this.routeUnsubscriber) {\n this.routeUnsubscriber()\n }\n } catch (err) {\n this.log.print('err destroy()', err)\n }\n },\n _register(subscriber) {\n this.log.print('called _register()', subscriber)\n switch (subscriber.$type) {\n case EventTypes.STORE:\n if (\n typeof subscriber.handle === 'string' ||\n subscriber.handle instanceof String\n ) {\n this.subscribers[subscriber.$type][subscriber.handle].push(subscriber)\n } else {\n this.subscribers[subscriber.$type][\n subscriber.handle.description\n ].push(subscriber)\n }\n\n return true\n case EventTypes.ROUTE:\n case EventTypes.MANUAL:\n if (!this.subscribers[subscriber.$type][subscriber.handle]) {\n this.subscribers[subscriber.$type][subscriber.handle] = []\n }\n this.subscribers[subscriber.$type][subscriber.handle].push(subscriber)\n return true\n }\n return false\n },\n register(subscriber) {\n if (Array.isArray(subscriber)) {\n for (const s of subscriber) {\n this._register(s)\n }\n } else {\n this._register(subscriber)\n }\n },\n}\n\nexport const storeEventLister = (ev, action) => {\n return {\n $type: EventTypes.STORE,\n handle: ev,\n action: action,\n }\n}\n\nexport const routeEventListener = (ev, action) => {\n return {\n $type: EventTypes.ROUTE,\n handle: ev,\n action: action,\n }\n}\n\nexport const manualEventListener = (ev, action) => {\n return {\n $type: EventTypes.MANUAL,\n handle: ev,\n action: action,\n }\n}\n","const getNights = nights => {\r\n if (nights.min === nights.max) {\r\n return `${nights.min} Nächte`\r\n } else {\r\n return `${nights.min}-${nights.max} Nächte`\r\n }\r\n}\r\n\r\nconst getPersons = persons => {\r\n if (persons.min === persons.max) {\r\n return `${persons.min} Personen`\r\n } else {\r\n return `${persons.min} - ${persons.max} Personen`\r\n }\r\n}\r\n\r\n// const getThemes = item => {\r\n// if (item.themes != undefined) {\r\n// return item.themes.map(f => f.name).join(',')\r\n// }\r\n\r\n// return ''\r\n// }\r\n\r\n// const loadMetaDataForOrder = async (id, token) => {\r\n// return await checkoutApi.metaData(id, token)\r\n// }\r\n\r\n// const getThemesString = (id, data) => {\r\n// let item = data.items.find(f => f.id == id)\r\n// if (item) {\r\n// return item.themes.map(f => f.name).join(',')\r\n// }\r\n// return ''\r\n// }\r\n\r\nconst getProductList = (mode, brand, productList) => {\r\n let gtmItems = []\r\n\r\n for (let i = 0; i < productList.length; i++) {\r\n let item = productList[i]\r\n let obj = {}\r\n\r\n if (mode === 'ua') {\r\n obj = {\r\n name: item.display,\r\n id: `wearetravel_${item.id}`,\r\n price: item.price.display,\r\n brand: brand,\r\n category: 'Urlaubsgutscheine',\r\n //category: getThemes(item),\r\n variant: `${getNights(item.nights)}, ${getPersons(item.persons)}`,\r\n list: 'Search Results',\r\n position: i,\r\n }\r\n } else {\r\n obj = {\r\n item_name: item.display,\r\n item_id: `wearetravel_${item.id}`,\r\n item_list_name: 'Search Results',\r\n item_brand: brand,\r\n item_variant: `${getNights(item.nights)}, ${getPersons(item.persons)}`,\r\n //item_category: getThemes(item),\r\n item_category: 'Urlaubsgutscheine',\r\n price: item.price.display,\r\n index: i,\r\n }\r\n }\r\n\r\n gtmItems.push(obj)\r\n }\r\n\r\n return gtmItems\r\n}\r\n\r\nconst getProduct = (mode, brand, product) => {\r\n let item = {}\r\n\r\n if (mode === 'ua') {\r\n item = {\r\n name: product.display,\r\n id: `wearetravel_${product.id}`,\r\n price: product.price.display,\r\n brand: brand,\r\n item_list_name: 'Search Results',\r\n //category: getThemes(product),\r\n category: 'Urlaubsgutscheine',\r\n variant: `${getNights(product.nights)}, ${getPersons(product.persons)}`,\r\n // position: 'Position',\r\n }\r\n } else {\r\n item = {\r\n item_name: product.display,\r\n item_id: `wearetravel_${product.id}`,\r\n item_brand: brand,\r\n item_list_name: 'Search Results',\r\n //item_category: getThemes(item),\r\n item_category: 'Urlaubsgutscheine',\r\n item_variant: `${getNights(product.nights)}, ${getPersons(\r\n product.persons,\r\n )}`,\r\n price: product.price.display,\r\n }\r\n }\r\n\r\n return item\r\n}\r\n\r\n//returns object for hoteldisplay\r\nconst getProductView = (mode, brand, product) => {\r\n let item = {}\r\n\r\n let nights = {\r\n min: product.variants.reduce(\r\n (min, p) => (p.nights < min ? p.nights : min),\r\n product.variants[0].nights,\r\n ),\r\n max: product.variants.reduce(\r\n (max, p) => (p.nights > max ? p.nights : max),\r\n product.variants[0].nights,\r\n ),\r\n }\r\n\r\n let persons = {\r\n min: product.variants.reduce(\r\n (min, p) => (p.persons < min ? p.persons : min),\r\n product.variants[0].persons,\r\n ),\r\n max: product.variants.reduce(\r\n (max, p) => (p.persons > max ? p.persons : max),\r\n product.variants[0].persons,\r\n ),\r\n }\r\n\r\n if (mode === 'ua') {\r\n item = {\r\n name: product.title,\r\n id: `wearetravel_${product.id}`,\r\n brand: brand,\r\n //price: '15.25',\r\n //category: getThemes(product),\r\n category: 'Urlaubsgutscheine',\r\n variant: `${getNights(nights)}, ${getPersons(persons)}`,\r\n }\r\n } else {\r\n item = {\r\n item_name: product.title,\r\n item_brand: brand,\r\n item_id: `wearetravel_${product.id}`,\r\n //item_category: getThemes(product),\r\n item_category: 'Urlaubsgutscheine',\r\n item_variant: `${getNights(nights)}, ${getPersons(persons)}`,\r\n item_list_name: 'Search Results',\r\n }\r\n }\r\n\r\n return item\r\n}\r\n\r\nconst getCartList = (mode, brand, cartList) => {\r\n let gtmItems = []\r\n let productList = [...cartList]\r\n\r\n if (mode === 'ua') {\r\n for (let i = 0; i < productList.length; i++) {\r\n let item = productList[i]\r\n let obj = {\r\n name: item.title,\r\n id: `wearetravel_${item.id}`,\r\n price: item.unitPrice,\r\n brand: brand,\r\n //category: getThemes(item),\r\n category: 'Urlaubsgutscheine',\r\n variant: `${item.parameter.nights} Nächte, ${item.parameter.persons} Personen`,\r\n quantity: item.quantity,\r\n }\r\n gtmItems.push(obj)\r\n }\r\n } else {\r\n for (let i = 0; i < productList.length; i++) {\r\n let item = productList[i]\r\n let obj = {\r\n item_description: item.title,\r\n item_id: `wearetravel_${item.id}`,\r\n item_variant: `${item.parameter.nights} Nächte, ${item.parameter.persons} Personen`,\r\n item_brand: brand,\r\n //item_category: getThemes(item),\r\n item_category: 'Urlaubsgutscheine',\r\n price: item.unitPrice,\r\n index: i,\r\n quantity: item.quantity,\r\n }\r\n gtmItems.push(obj)\r\n }\r\n }\r\n\r\n return gtmItems\r\n}\r\n\r\nexport const getPurchasedList = (mode, brand, purchasedList) => {\r\n let gtmItems = []\r\n //let metaData = await loadMetaDataForOrder(id, token)\r\n if (mode === 'ua') {\r\n for (let i = 0; i < purchasedList.length; i++) {\r\n let item = purchasedList[i]\r\n //let themes = getThemesString(item.variantId, metaData)\r\n let obj = {\r\n name: item.title,\r\n id: `wearetravel_${item.id}`,\r\n brand: brand,\r\n price: item.unitPrice,\r\n //category: themes,\r\n category: 'Urlaubsgutscheine',\r\n variant: `${item.parameter.nights} Nächte, ${item.parameter.persons} Personen`,\r\n quantity: item.quantity,\r\n //coupon: '',\r\n }\r\n gtmItems.push(obj)\r\n }\r\n } else {\r\n for (let i = 0; i < purchasedList.length; i++) {\r\n let item = purchasedList[i]\r\n let obj = {\r\n item_name: item.title,\r\n item_id: `wearetravel_${item.id}`,\r\n item_brand: brand,\r\n item_price: item.unitPrice,\r\n item_quantity: item.quantity,\r\n item_variant: `${item.parameter.nights} Nächte, ${item.parameter.persons} Personen`,\r\n }\r\n gtmItems.push(obj)\r\n }\r\n }\r\n\r\n return gtmItems\r\n}\r\n\r\nexport default {\r\n getProductList,\r\n getProduct,\r\n getProductView,\r\n getCartList,\r\n getPurchasedList,\r\n}\r\n","import GtmHelper from './google-tag-manager'\nimport i18n from '@/i18n'\n\nimport { createLogger } from './log'\n\nimport {\n StoreEvents,\n storeEventLister,\n routeEventListener,\n manualEventListener,\n} from './event-dispatcher'\n\nconst logger = createLogger(\"GTM-Subscriber\", \"📊\", false)\n\nexport const createGTMListeners = (config, gtm) => {\n let subscribers = []\n if (config) {\n //track home page\n subscribers.push(\n routeEventListener('home', t => {\n logger.print('visited home', t)\n if (config.mode === 'ua') {\n gtm.trackEvent({\n pageCategory: 'homepage',\n visitorType: 'high-value',\n })\n } else {\n gtm.trackEvent({\n pageCategory: 'homepage',\n visitorType: 'high-value',\n })\n }\n }),\n )\n\n //track product impression\n subscribers.push(\n storeEventLister(StoreEvents.SEARCH_PRODUCTS_UPDATED, m => {\n const products = m.payload\n\n logger.print('SEARCH_PRODUCTS_UPDATED', products)\n\n try {\n if (config.mode === 'ua') {\n gtm.trackEvent({\n event: 'eec_product_impressions',\n visitorType: 'low-value',\n ecommerce: {\n currencyCode: 'EUR', // Local currency is optional.\n impressions: GtmHelper.getProductList(\n config.mode,\n config.brand,\n products,\n ),\n },\n })\n } else {\n gtm.trackEvent({\n event: 'eec_product_impressions',\n visitorType: 'low-value',\n category: 'ProductView',\n action: 'load',\n label: 'ProductView',\n ecommerce: {\n items: GtmHelper.getProductList(\n config.mode,\n config.brand,\n products,\n ),\n },\n })\n }\n } catch (err) {\n logger.error('Failed SEARCH_PRODUCTS_UPDATED', err)\n }\n }),\n )\n\n //track offerclick\n subscribers.push(\n manualEventListener('offer_clicked', payload => {\n logger.print('clicked offerelement', payload)\n const product = payload.product\n\n try {\n if (config.mode === 'ua') {\n gtm.trackEvent({\n event: 'eec_productClick',\n ecommerce: {\n click: {\n actionField: {list: 'Search Results'}, // Optional list property.\n products: [\n GtmHelper.getProduct(config.mode, config.brand, product),\n ],\n },\n },\n })\n } else {\n gtm.trackEvent({\n event: 'eec_select_item',\n category: 'ProductSelect',\n action: 'click',\n label: 'ProductSelect',\n ecommerce: {\n items: [\n GtmHelper.getProduct(config.mode, config.brand, product),\n ],\n },\n })\n }\n } catch (err) {\n logger.error('Failed HOTEL_OFFER_LOADED', err)\n }\n }),\n )\n\n //track item view\n subscribers.push(\n storeEventLister(StoreEvents.HOTEL_OFFER_LOADED, m => {\n const offer = m.payload\n logger.print('HOTEL_OFFER_LOADED', offer, offer.variants)\n\n try {\n if (config.mode === 'ua') {\n gtm.trackEvent({\n event: 'eec_view_item',\n visitorType: 'mid-value',\n ecommerce: {\n detail: {\n products: [\n GtmHelper.getProductView(config.mode, config.brand, offer),\n ],\n },\n },\n })\n } else {\n gtm.trackEvent({\n event: 'eec_view_item',\n visitorType: 'mid-value',\n category: 'ProductDetail',\n action: 'load',\n label: 'ProductDetail',\n ecommerce: {\n items: [\n GtmHelper.getProductView(config.mode, config.brand, offer),\n ],\n },\n })\n }\n } catch (err) {\n logger.error('Failed HOTEL_OFFER_LOADED', err)\n }\n }),\n )\n\n //track add to cart\n subscribers.push(\n storeEventLister(StoreEvents.PRODUCT_ADDED, m => {\n const cartItem = m.payload\n\n logger.print('PRODUCT_ADDED', cartItem)\n\n try {\n if (config.mode === 'ua') {\n gtm.trackEvent({\n event: 'eec_addToCart',\n ecommerce: {\n currencyCode: 'EUR',\n add: {\n products: [\n {\n name: cartItem.title,\n id: `wearetravel_${cartItem.variantId}`,\n price: cartItem.unitPrice,\n brand: config.brand,\n //category: getThemes(product),\n category: 'Urlaubsgutscheine',\n variant: `${cartItem.parameter.nights} ${i18n.t(\n 'general.nights',\n )}, ${cartItem.parameter.persons} ${i18n.t(\n 'general.persons',\n )}`,\n quantity: cartItem.quantity,\n },\n ],\n },\n },\n })\n } else {\n gtm.trackEvent({\n event: 'eec_add_to_cart', // Event type [default = 'interaction'] (Optional)\n category: 'Cart',\n action: 'click',\n label: 'Add to cart',\n ecommerce: {\n items: [\n {\n item_name: cartItem.title, // Name or ID is required.\n item_id: `wearetravel_${cartItem.variantId}`,\n //item_category: getThemes(product),\n item_category: 'Urlaubsgutscheine',\n price: cartItem.unitPrice,\n quantity: cartItem.quantity,\n },\n ],\n },\n })\n }\n } catch (err) {\n logger.error('Failed PRODUCT_ADDED', err)\n }\n }),\n )\n\n //track remove from cart\n subscribers.push(\n storeEventLister(StoreEvents.PRODUCT_REMOVED, m => {\n const cartItem = m.payload\n\n logger.print('PRODUCT_REMOVED', cartItem)\n\n try {\n if (config.mode === 'ua') {\n gtm.trackEvent({\n event: 'eec_removeFromCart',\n ecommerce: {\n remove: {\n products: [\n {\n // removing a product to a shopping cart.\n name: cartItem.title,\n id: `wearetravel_${cartItem.variantId}`,\n price: cartItem.unitPrice,\n brand: config.brand,\n //category: getThemes(product),\n category: 'Urlaubsgutscheine',\n variant: `${cartItem.parameter.nights} ${i18n.t(\n 'general.nights',\n )}, ${cartItem.parameter.persons} ${i18n.t(\n 'general.persons',\n )}`,\n quantity: cartItem.quantity,\n },\n ],\n },\n },\n })\n } else {\n gtm.trackEvent({\n event: 'eec_remove_from_cart',\n category: 'Cart',\n action: 'click',\n label: 'Remove from cart',\n ecommerce: {\n items: [\n {\n item_name: cartItem.title, // Name or ID is required.\n item_id: `wearetravel_${cartItem.variantId}`,\n price: cartItem.unitPrice,\n item_variant: `${cartItem.parameter.nights} ${i18n.t(\n 'general.nights',\n )}, ${cartItem.parameter.persons} ${i18n.t(\n 'general.persons',\n )}`,\n //item_category: getThemes(product),\n item_category: 'Urlaubsgutscheine',\n item_brand: config.brand,\n quantity: cartItem.quantity,\n },\n ],\n },\n })\n }\n } catch (err) {\n logger.error('Failed PRODUCT_REMOVED', err)\n }\n }),\n )\n\n //track start checkout\n subscribers.push(\n manualEventListener('checkout_clicked', m => {\n const cartItems = m\n\n logger.print('CHECKOUT_PAYMENT_STARTED', cartItems)\n\n try {\n if (config.mode === 'ua') {\n gtm.trackEvent({\n event: 'eec_checkout',\n visitorType: 'high-value',\n ecommerce: {\n checkout: {\n //actionField: {step: 1, option: 'Visa'},\n products: GtmHelper.getCartList(\n config.mode,\n config.brand,\n cartItems,\n ),\n },\n },\n })\n } else {\n gtm.trackEvent({\n event: 'eec_begin_checkout',\n visitorType: 'high-value',\n category: 'Checkout',\n action: 'click',\n label: 'Checkout',\n ecommerce: {\n items: GtmHelper.getCartList(\n config.mode,\n config.brand,\n cartItems,\n ),\n },\n })\n }\n } catch (err) {\n logger.error('Failed CHECKOUT_PAYMENT_STARTED', err)\n }\n }),\n )\n\n //track purchase\n subscribers.push(\n storeEventLister(StoreEvents.CHECKOUT_ORDER_CLOSED, m => {\n const order = m.payload\n\n logger.print('CHECKOUT_ORDER_CLOSED', order)\n\n try {\n if (config.mode === 'ua') {\n gtm.trackEvent({\n event: 'eec_purchase',\n ecommerce: {\n purchase: {\n actionField: {\n id: `wearetravel_${order.id}`, // Transaction ID. Required for purchases and refunds.\n revenue: order.orderItems.reduce(\n (a, c) => a + c.total,\n 0.0,\n ), // Total transaction value (incl. tax and shipping)\n },\n products: GtmHelper.getPurchasedList(\n config.mode,\n config.brand,\n order.orderItems,\n ),\n },\n },\n })\n } else {\n gtm.trackEvent({\n event: 'eec_purchase',\n category: 'Purchase',\n action: 'click',\n label: 'Purchase',\n ecommerce: {\n purchase: {\n transaction_id: `wearetravel_${order.id}`,\n value: order.orderItems.reduce((a, c) => a + c.total, 0.0),\n currency: order.currency,\n items: GtmHelper.getPurchasedList(\n config.mode,\n config.brand,\n order.orderItems,\n ),\n },\n },\n })\n }\n } catch (err) {\n logger.error('Failed ORDER_CLOSED', err)\n }\n }),\n )\n }\n return subscribers\n}\n","// import i18n from '@/i18n'\nimport {createLogger} from './log'\n\nimport {\n StoreEvents,\n storeEventLister,\n manualEventListener,\n} from './event-dispatcher'\n\nconst logger = createLogger('GTAG-Subscriber', '📊', false)\n\nexport const createGTAGListeners = (analyticstype, gtag) => {\n console.log(analyticstype, gtag)\n\n let subscribers = []\n if (analyticstype == 'gtag' || analyticstype == 'both') {\n //track product impression\n subscribers.push(\n storeEventLister(StoreEvents.SEARCH_PRODUCTS_UPDATED, m => {\n const products = m.payload.results\n\n logger.print('SEARCH_PRODUCTS_UPDATED', products)\n\n try {\n let searchItems = []\n products.forEach((element, index) => {\n searchItems.push({\n id: element.id,\n name: `${element.contact.name} - ${element.display}`,\n category: 'Urlaubsgutschein',\n brand: element.vendor.name,\n list_name: 'Suche',\n list_position: index + 1,\n quantity: 1,\n price: element.price.display,\n })\n }),\n gtag.event('view_item_list', {\n event_category: 'ecommerce',\n event_label: 'Search',\n items: searchItems,\n })\n } catch (err) {\n logger.error('Failed SEARCH_PRODUCTS_UPDATED', err)\n }\n }),\n )\n\n //track offerclick\n subscribers.push(\n manualEventListener('offer_clicked', payload => {\n logger.print('clicked offerelement', payload)\n const product = payload.product\n\n try {\n gtag.event('select_content', {\n content_type: 'product',\n event_category: 'ecommerce',\n event_label: 'ProductClick',\n items: [\n {\n id: product.id,\n name: product.display,\n category: 'Urlaubsgutschein',\n price: product.price.display,\n },\n ],\n })\n } catch (err) {\n logger.error('Failed HOTEL_OFFER_LOADED', err)\n }\n }),\n )\n\n //track item view\n subscribers.push(\n storeEventLister(StoreEvents.HOTEL_OFFER_LOADED, m => {\n const offer = m.payload\n logger.print('HOTEL_OFFER_LOADED', offer, offer.variants)\n\n try {\n gtag.event('view_item', {\n items: [\n {\n id: offer.id,\n name: offer.title,\n category: 'Urlaubsgutschein',\n },\n ],\n })\n } catch (err) {\n logger.error('Failed HOTEL_OFFER_LOADED', err)\n }\n }),\n )\n\n //track add to cart\n subscribers.push(\n storeEventLister(StoreEvents.PRODUCT_ADDED, m => {\n const cartItem = m.payload\n\n logger.print('PRODUCT_ADDED', cartItem)\n\n try {\n gtag.event('add_to_cart', {\n event_category: 'ecommerce',\n event_label: 'AddToCart',\n items: [\n {\n id: cartItem.id,\n name: `${cartItem.subtitle} - ${cartItem.title}`,\n category: 'Urlaubsgutschein',\n //brand: 'foo',\n list_name: 'Sucheresultat',\n list_position: 1,\n quantity: cartItem.quantity,\n variant: cartItem.variantId,\n price: cartItem.unitPrice,\n },\n ],\n })\n } catch (err) {\n logger.error('Failed PRODUCT_ADDED', err)\n }\n }),\n )\n\n //track remove from cart\n subscribers.push(\n storeEventLister(StoreEvents.PRODUCT_REMOVED, m => {\n const cartItem = m.payload\n\n logger.print('PRODUCT_REMOVED', cartItem)\n\n try {\n gtag.event('remove_from_cart', {\n event_category: 'ecommerce',\n event_label: 'RemoveFromCart',\n items: [\n {\n id: cartItem.id,\n name: `${cartItem.subtitle} - ${cartItem.title}`,\n category: 'Urlaubsgutschein',\n //brand: 'foo',\n list_name: 'Sucheresultat',\n list_position: 1,\n quantity: cartItem.quantity,\n variant: cartItem.variantId,\n price: cartItem.unitPrice,\n },\n ],\n })\n } catch (err) {\n logger.error('Failed PRODUCT_REMOVED', err)\n }\n }),\n )\n\n //track start checkout\n subscribers.push(\n manualEventListener('checkout_clicked', m => {\n const cartItems = m\n\n logger.print('CHECKOUT_PAYMENT_STARTED', cartItems)\n\n try {\n let cart = []\n\n cartItems.forEach((element, index) => {\n cart.push({\n id: element.id,\n name: `${element.title} - ${element.description}`,\n category: 'Urlaubsgutschein',\n list_name: 'Cart',\n list_position: index + 1,\n quantity: element.quantity,\n price: element.unitPrice,\n })\n })\n\n gtag.event('begin_checkout', {\n items: cart,\n })\n } catch (err) {\n logger.error('Failed CHECKOUT_PAYMENT_STARTED', err)\n }\n }),\n )\n\n //track purchase\n subscribers.push(\n storeEventLister(StoreEvents.CHECKOUT_ORDER_CLOSED, m => {\n const order = m.payload\n\n logger.print('CHECKOUT_ORDER_CLOSED', order)\n\n try {\n let purchasedItems = []\n\n order.orderItems.forEach(element => {\n purchasedItems.push({\n id: order.id,\n name: element.title,\n //brand. '',\n //category: '',\n price: element.unitPrice,\n quantity: element.quantity,\n variant: element.variantId,\n list_position: 1,\n //list_name: 'Search Results',\n })\n })\n\n gtag.purchase({\n transaction_id: order.id,\n //affiliation: 'Google online store',\n value: order.orderItems.reduce((a, c) => a + c.total, 0.0),\n currency: 'EUR',\n items: purchasedItems,\n })\n } catch (err) {\n logger.error('Failed ORDER_CLOSED', err)\n }\n }),\n )\n }\n return subscribers\n}\n","// import i18n from '@/i18n'\nimport {createLogger} from './log'\n\nimport {\n StoreEvents,\n storeEventLister,\n manualEventListener,\n} from './event-dispatcher'\n\nconst logger = createLogger('GA-Subscriber', '📊', false)\n\nexport const createGAListeners = (analyticstype, ga) => {\n console.log(analyticstype, ga)\n\n let subscribers = []\n if (analyticstype == 'ua' || analyticstype == 'both') {\n //track product impression\n subscribers.push(\n storeEventLister(StoreEvents.SEARCH_PRODUCTS_UPDATED, m => {\n const products = m.payload.results\n\n logger.print('SEARCH_PRODUCTS_UPDATED', products)\n\n console.log(ga.ecommerce)\n\n try {\n products.forEach((element, index) => {\n ga.ecommerce.addImpression({\n id: element.id,\n name: `${element.contact.name} - ${element.display}`,\n category: 'Urlaubsgutschein',\n brand: element.vendor.name,\n list: 'Suche',\n position: index + 1,\n })\n })\n } catch (err) {\n logger.error('Failed SEARCH_PRODUCTS_UPDATED', err)\n }\n }),\n )\n\n //track offerclick\n subscribers.push(\n manualEventListener('offer_clicked', payload => {\n const product = payload.product\n logger.print('clicked offerelement', payload, product)\n\n try {\n ga.ecommerce.addProduct({\n id: product.id,\n name: product.display,\n price: product.price,\n quantity: 1,\n // variant: cartItem.variantId,\n })\n ga.ecommerce.setAction('click', {list: 'Search Results'})\n ga.ecommerce.send('event', 'UX', 'click', 'Results')\n } catch (err) {\n logger.error('Failed HOTEL_OFFER_LOADED', err)\n }\n }),\n )\n\n //track item view\n subscribers.push(\n storeEventLister(StoreEvents.HOTEL_OFFER_LOADED, m => {\n const offer = m.payload\n logger.print('HOTEL_OFFER_LOADED', offer, offer.variants)\n\n try {\n // ga.event('view_item', {\n // items: [\n // {\n // id: offer.id,\n // name: offer.title,\n // category: 'Urlaubsgutschein',\n // },\n // ],\n // })\n\n ga.ecommerce.addProduct({\n id: offer.id,\n name: `${offer.subtitle} - ${offer.title}`,\n price: offer.unitPrice,\n quantity: offer.quantity,\n variant: offer.variantId,\n })\n ga.ecommerce.setAction('detail')\n } catch (err) {\n logger.error('Failed HOTEL_OFFER_LOADED', err)\n }\n }),\n )\n\n //track add to cart\n subscribers.push(\n storeEventLister(StoreEvents.PRODUCT_ADDED, m => {\n const cartItem = m.payload\n\n logger.print('PRODUCT_ADDED', cartItem)\n\n try {\n ga.ecommerce.addProduct({\n id: cartItem.id,\n name: `${cartItem.subtitle} - ${cartItem.title}`,\n price: cartItem.unitPrice,\n quantity: cartItem.quantity,\n variant: cartItem.variantId,\n })\n ga.ecommerce.setAction('add')\n ga.ecommerce.send('event', 'UX', 'click', 'add to cart')\n } catch (err) {\n logger.error('Failed PRODUCT_ADDED', err)\n }\n }),\n )\n\n //track remove from cart\n subscribers.push(\n storeEventLister(StoreEvents.PRODUCT_REMOVED, m => {\n const cartItem = m.payload\n\n logger.print('PRODUCT_REMOVED', cartItem)\n\n try {\n ga.ecommerce.addProduct({\n id: cartItem.id,\n name: `${cartItem.subtitle} - ${cartItem.title}`,\n price: cartItem.unitPrice,\n quantity: cartItem.quantity,\n variant: cartItem.variantId,\n })\n ga.ecommerce.setAction('remove')\n ga.ecommerce.send('event', 'UX', 'click', 'remove from cart')\n } catch (err) {\n logger.error('Failed PRODUCT_REMOVED', err)\n }\n }),\n )\n\n //track start checkout\n subscribers.push(\n manualEventListener('checkout_clicked', m => {\n const cartItems = m\n\n logger.print('CHECKOUT_PAYMENT_STARTED', cartItems)\n\n try {\n cartItems.forEach(cartItem => {\n ga.ecommerce.addProduct({\n id: cartItem.id,\n name: `${cartItem.subtitle} - ${cartItem.title}`,\n price: cartItem.unitPrice,\n quantity: cartItem.quantity,\n variant: cartItem.variantId,\n })\n })\n\n ga.ecommerce.setAction('remove')\n ga.ecommerce.send('event', 'UX', 'click', 'remove from cart')\n } catch (err) {\n logger.error('Failed CHECKOUT_PAYMENT_STARTED', err)\n }\n }),\n )\n\n //track purchase\n subscribers.push(\n storeEventLister(StoreEvents.CHECKOUT_ORDER_CLOSED, m => {\n const order = m.payload\n\n logger.print('CHECKOUT_ORDER_CLOSED', order)\n\n try {\n order.orderItems.forEach(element => {\n ga.ecommerce.addProduct({\n id: order.id,\n name: element.title,\n price: element.unitPrice,\n quantity: element.quantity,\n variant: element.variantId,\n })\n })\n ga.ecommerce.setAction('purchase', {\n id: order.id,\n })\n ga.ecommerce.send('event', 'pageview')\n } catch (err) {\n logger.error('Failed ORDER_CLOSED', err)\n }\n }),\n )\n }\n return subscribers\n}\n","// import i18n from '@/i18n'\nimport {createLogger} from './log'\n\nimport {StoreEvents, storeEventLister} from './event-dispatcher'\n\nconst logger = createLogger('FbPixel-Subscriber', '📊', false)\n\nexport const createFBPListeners = (fbPixelEnabled, fbp) => {\n console.log(fbPixelEnabled, fbp)\n\n let subscribers = []\n if (fbPixelEnabled) {\n //track add to cart\n subscribers.push(\n storeEventLister(StoreEvents.PRODUCT_ADDED, m => {\n const cartItem = m.payload\n\n logger.print('PRODUCT_ADDED', cartItem)\n\n try {\n fbp.event('AddToCart')\n } catch (err) {\n logger.error('Failed PRODUCT_ADDED', err)\n }\n }),\n )\n\n //track purchase\n subscribers.push(\n storeEventLister(StoreEvents.CHECKOUT_ORDER_CLOSED, m => {\n const order = m.payload\n\n logger.print('CHECKOUT_ORDER_CLOSED', order)\n\n try {\n fbp.event('Purchase', {\n value: order.orderItems.reduce((a, c) => a + c.total, 0.0),\n currency: order.currency,\n })\n } catch (err) {\n logger.error('Failed ORDER_CLOSED', err)\n }\n }),\n )\n }\n return subscribers\n}\n","// import 'core-js/stable' //needed for ie11 support (payload: 373KB!!!)llScript\r\n// import 'regenerator-runtime/runtime'\r\nimport 'intersection-observer'\r\nimport Vue from 'vue'\r\nimport App from './App.vue'\r\nimport router from './router'\r\nimport store from './store'\r\nimport Buefy from 'buefy'\r\n// import VueAnime from 'vue-animejs'\r\nimport VueAnalytics from 'vue-analytics'\r\nimport VueGtag from 'vue-gtag'\r\n//import Drawer from './components/Drawer.vue'\r\n//import Vue2Crumbs from 'vue-2-crumbs'\r\nimport VueScrollTo from 'vue-scrollto'\r\n// import VueCountdown from '@chenfengyuan/vue-countdown'\r\nimport './registerServiceWorker'\r\nimport interceptors from './api/interceptors'\r\nimport {setDomain} from './api/backend'\r\nimport {setShopCurrency} from './api/checkout-api'\r\nimport {ValidationProvider, ValidationObserver, extend} from 'vee-validate'\r\nimport {\r\n required,\r\n email,\r\n numeric,\r\n oneOf,\r\n min,\r\n confirmed,\r\n} from 'vee-validate/dist/rules'\r\nimport './filters/currency-filter'\r\nimport './filters/iso-country-filter'\r\nimport './filters/theme-filter'\r\nimport './filters/gender-filter'\r\nimport './filters/amount-filter'\r\nimport './filters/capitalize-filter'\r\nimport './filters/remove-special-chars'\r\nimport './filters/promotion-filter'\r\nimport './filters/price-prefix-abbrevation'\r\nimport * as VueGoogleMaps from 'vue2-google-maps'\r\nimport VueContentPlaceholders from 'vue-content-placeholders'\r\nimport VueMeta from 'vue-meta'\r\nimport VueFacebookPixel from 'vue-analytics-facebook-pixel'\r\n\r\nimport VueFilterDateFormat from 'vue-filter-date-format'\r\nimport vueDebounce from 'vue-debounce'\r\nimport VueObserveVisibility from 'vue-observe-visibility'\r\nimport VueLazyload from 'vue-lazyload'\r\nimport VueGtm from 'vue-gtm'\r\nimport i18n from './i18n'\r\n\r\nimport * as Sentry from '@sentry/vue'\r\nimport {Integrations} from '@sentry/tracing'\r\n\r\nimport Awin from '@/common/awin-plugin/'\r\nimport Adcell from '@/common/adcell-plugin/'\r\n\r\nimport {dispatcher} from '@/common/event-dispatcher'\r\nimport {createGTMListeners} from '@/common/gtm-subscriber'\r\nimport {createGTAGListeners} from '@/common/gtag-subscriber'\r\nimport {createGAListeners} from '@/common/ga-subscriber'\r\nimport {createFBPListeners} from '@/common/fbpixel-subscriber'\r\n\r\nimport {createLogger} from '@/common/log'\r\n\r\nconst logger = createLogger('main.js', '', false)\r\n\r\nif (process.env.VUE_APP_SENTRY_ENABLE) {\r\n Sentry.init({\r\n Vue,\r\n dsn: process.env.VUE_APP_SENTRY_DSN,\r\n integrations: [new Integrations.BrowserTracing()],\r\n tracesSampleRate: process.env.VUE_APP_SENTRY_SAMPLERATE,\r\n environment: `${process.env.NODE_ENV}-${process.env.VUE_APP_THEME}`,\r\n logErrors: process.env.VUE_APP_SENTRY_LOG_VUE_ERR ? true : false, //if true will trigger vue errors as well (for dev)\r\n tracingOptions: {\r\n trackComponents: true,\r\n },\r\n })\r\n}\r\n\r\nsetDomain(process.env.VUE_APP_API)\r\nsetShopCurrency(process.env.VUE_APP_CURRENCY)\r\ninterceptors()\r\n\r\n//settings available in all components\r\n\r\nconst config = require(process.env.CONFIG_LOCATION)\r\nVue.prototype.$whitelabel = config.whitelabelConfig\r\nif (\r\n process.env.VUE_APP_ALLOW_GIFT_CARD &&\r\n process.env.VUE_APP_ALLOW_GIFT_CARD == 'true'\r\n) {\r\n Vue.prototype.$whitelabel.giftCardSupport = true\r\n}\r\nVue.config.productionTip = false\r\n\r\nif (!Vue.prototype.$whitelabel.hasCookieConsent) {\r\n localStorage.acceptAllCookies = true\r\n}\r\n\r\nVue.use(Buefy, {\r\n defaultIconPack: 'fa',\r\n defaultTooltipAnimated: true,\r\n defaultDayNames: ['So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa'],\r\n defaultMonthNames: [\r\n 'Jan',\r\n 'Feb',\r\n 'Mär',\r\n 'Apr',\r\n 'Mai',\r\n 'Jun',\r\n 'Jul',\r\n 'Aug',\r\n 'Sep',\r\n 'Okt',\r\n 'Nov',\r\n 'Dez',\r\n ],\r\n defaultFirstDayOfWeek: 1,\r\n})\r\n\r\n// Vue.use(VueAnime)\r\nVue.use(VueGoogleMaps, {\r\n load: {\r\n key: process.env.VUE_APP_MAPS_KEY,\r\n },\r\n})\r\nVue.use(VueContentPlaceholders)\r\n\r\nlet analyticstype = Vue.prototype.$whitelabel.analyticsType\r\n\r\nif (analyticstype == 'gtag' || analyticstype == 'both') {\r\n Vue.use(\r\n VueGtag,\r\n {\r\n config: {\r\n id: Vue.prototype.$whitelabel.analyticsId,\r\n params: {\r\n anonymize_ip: true,\r\n },\r\n },\r\n // enabled: () => {\r\n // if (localStorage.acceptAllCookies === 'true') {\r\n // return true\r\n // }\r\n // return false\r\n // },\r\n //enabled: false,\r\n bootstrap: false,\r\n },\r\n router,\r\n )\r\n\r\n // if (process.env.NODE_ENV === 'development') {\r\n // Vue.$gtag.enabled = false\r\n // }\r\n if (localStorage.acceptAllCookies === 'true') {\r\n Vue.$gtag.optIn() // https://github.com/MatteoGabriele/vue-gtag/issues/199\r\n }\r\n}\r\n\r\nif (analyticstype == 'ua' || analyticstype == 'both') {\r\n Vue.use(VueAnalytics, {\r\n id: Vue.prototype.$whitelabel.analyticsId_ua,\r\n ecommerce: {\r\n enabled: true,\r\n enhanced: true,\r\n },\r\n disabled: () => {\r\n if (localStorage.acceptAllCookies === 'true') {\r\n return false\r\n }\r\n return true\r\n },\r\n //disabled: true,\r\n router,\r\n beforeFirstHit() {\r\n //see https://github.com/MatteoGabriele/vue-analytics/issues/64\r\n Vue.$ga.set('anonymizeIp', true)\r\n },\r\n debug: {\r\n //enabled: process.env.NODE_ENV === 'development',\r\n enabled: false,\r\n trace: false,\r\n sendHitTask: process.env.NODE_ENV === 'production',\r\n },\r\n })\r\n\r\n // if (process.env.NODE_ENV === 'development') {\r\n // Vue.$ga.disabled = true\r\n // }\r\n\r\n if (localStorage.acceptAllCookies === 'true') {\r\n logger.debug('ua analytics enabled')\r\n Vue.$ga.enable()\r\n }\r\n}\r\n\r\nif (Vue.prototype.$whitelabel.tagManager) {\r\n Vue.use(VueGtm, {\r\n id: Vue.prototype.$whitelabel.tagManager.id, // Your GTM single container ID or array of container ids ['GTM-xxxxxxx', 'GTM-yyyyyyy']\r\n defer: true, // defaults to false. Script can be set to `defer` to increase page-load-time at the cost of less accurate results (in case visitor leaves before script is loaded, which is unlikely but possible)\r\n enabled: false, // defaults to true. Plugin can be disabled by setting this to false for Ex: enabled: !!GDPR_Cookie (optional)\r\n debug: process.env.NODE_ENV === 'development', // Whether or not display console logs debugs (optional)\r\n })\r\n\r\n if (localStorage.acceptAllCookies === 'true') {\r\n Vue.gtm.enable(true)\r\n }\r\n}\r\n\r\nVue.use(VueMeta, {\r\n refreshOnceOnNavigation: true,\r\n})\r\n\r\nif (Vue.prototype.$whitelabel.fbPixelEnabled) {\r\n !(function(f, b, e, v, n, t, s) {\r\n if (f.fbq) return\r\n n = f.fbq = function() {\r\n n.callMethod ? n.callMethod.apply(n, arguments) : n.queue.push(arguments)\r\n }\r\n if (!f._fbq) f._fbq = n\r\n n.push = n\r\n n.loaded = !0\r\n n.version = '2.0'\r\n n.queue = []\r\n t = b.createElement(e)\r\n t.async = !0\r\n t.src = v\r\n s = b.getElementsByTagName(e)[0]\r\n s.parentNode.insertBefore(t, s)\r\n })(\r\n window,\r\n document,\r\n 'script',\r\n 'https://connect.facebook.net/en_US/fbevents.js',\r\n )\r\n\r\n Vue.use(VueFacebookPixel)\r\n if (localStorage.acceptAllCookies === 'true') {\r\n Vue.analytics.fbq.init(Vue.prototype.$whitelabel.fbPixelId)\r\n Vue.analytics.fbq.event('PageView')\r\n }\r\n}\r\n\r\nVue.use(VueFilterDateFormat)\r\nextend('required', {\r\n ...required,\r\n message: (_, values) => i18n.t('validation.required', values),\r\n})\r\nextend('email', {\r\n ...email,\r\n message: (_, values) => i18n.t('validation.email', values),\r\n})\r\nextend('numeric', {\r\n ...numeric,\r\n message: (_, values) => i18n.t('validation.numeric', values),\r\n})\r\nextend('oneOf', {\r\n ...oneOf,\r\n message: (_, values) => i18n.t('validation.oneOf', values),\r\n})\r\n\r\nextend('min', {\r\n ...min,\r\n message: (_, values) => i18n.t('validation.min', values),\r\n})\r\n\r\nextend('confirmed', {\r\n ...confirmed,\r\n message: (_, values) => i18n.t('validation.confirmed', values),\r\n})\r\n\r\nextend('date', {\r\n validate: value =>\r\n value.match(/^(0?[1-9]|[12][0-9]|3[01]).(0?[1-9]|1[012]).\\d{4}$/), // the validation function\r\n message: (_, values) => i18n.t('validation.european_date', values),\r\n})\r\n\r\nVue.use(VueScrollTo, {\r\n container: 'body',\r\n duration: 500,\r\n easing: 'ease',\r\n offset: 0,\r\n force: true,\r\n cancelable: true,\r\n onStart: false,\r\n onDone: false,\r\n onCancel: false,\r\n x: false,\r\n y: true,\r\n})\r\n\r\nVue.use(vueDebounce)\r\nVue.use(VueObserveVisibility)\r\nVue.use(VueLazyload)\r\n\r\nVue.component('ValidationProvider', ValidationProvider)\r\nVue.component('ValidationObserver', ValidationObserver)\r\n// Vue.component(VueCountdown.name, VueCountdown)\r\n\r\n//detect ie11 and add class to body tag to target via css\r\nif (\r\n '-ms-scroll-limit' in document.documentElement.style &&\r\n '-ms-ime-align' in document.documentElement.style\r\n) {\r\n document.querySelector('body').classList.add('isIE11')\r\n}\r\n\r\nVue.prototype.$promotions = {\r\n anyActiveFor(t) {\r\n const res = store.getters.promotions.filter(f => f.type == t)\r\n return res.length > 0\r\n },\r\n getMinStartFor(t) {\r\n const res = store.getters.promotions.find(f => f.type == t)\r\n if (res) {\r\n return res.from\r\n }\r\n return null\r\n },\r\n getMaxEndFor(t) {\r\n const res = store.getters.promotions.find(f => f.type == t)\r\n if (res) {\r\n return res.to\r\n }\r\n return null\r\n },\r\n getOfferCountFor(t) {\r\n const res = store.getters.promotions.find(f => f.type == t)\r\n if (res) {\r\n return res.count\r\n }\r\n return 0\r\n },\r\n}\r\n\r\nif (Vue.prototype.$whitelabel.awinId) {\r\n Vue.use(Awin, {awinId: Vue.prototype.$whitelabel.awinId})\r\n}\r\n\r\nif (Vue.prototype.$whitelabel.adcell) {\r\n Vue.use(Adcell, {adcell: Vue.prototype.$whitelabel.adcell})\r\n}\r\n\r\nVue.prototype.$whitelabel.styleOverride().then(() => {\r\n new Vue({\r\n router,\r\n store,\r\n i18n,\r\n render: h => h(App),\r\n destroyed() {\r\n dispatcher.destroy()\r\n },\r\n created() {\r\n try {\r\n const urlParams = new URLSearchParams(window.location.search)\r\n if (urlParams.has('r')) {\r\n const ref = urlParams.get('r')\r\n const path = () => {\r\n let e = location,\r\n t = document.querySelector('link[rel=\"canonical\"][href]')\r\n if (t) {\r\n let a = document.createElement('a')\r\n ;(a.href = t.href),\r\n a.hostname.replace(/^www\\./, '') ===\r\n location.hostname.replace(/^www\\./, '') && (e = a)\r\n }\r\n return e.pathname + e.search || '/'\r\n }\r\n var obj = {\r\n code: ref,\r\n path: path(),\r\n referer: document.referer,\r\n created: new Date(),\r\n }\r\n if (urlParams.has('rx')) {\r\n obj.add = urlParams.get('rx')\r\n }\r\n store.dispatch('setReferalToken', obj)\r\n }\r\n } catch {\r\n logger.error('no initial url parameters fetched')\r\n }\r\n try {\r\n dispatcher.setup()\r\n const gtmSubscribers = createGTMListeners(\r\n Vue.prototype.$whitelabel.tagManager,\r\n Vue.gtm,\r\n )\r\n const gtagSubscribers = createGTAGListeners(\r\n Vue.prototype.$whitelabel.analyticsType,\r\n Vue.$gtag,\r\n )\r\n const gaSubscribers = createGAListeners(\r\n Vue.prototype.$whitelabel.analyticsType,\r\n Vue.$ga,\r\n )\r\n\r\n dispatcher.register(gtmSubscribers)\r\n dispatcher.register(gtagSubscribers)\r\n dispatcher.register(gaSubscribers)\r\n\r\n if (Vue.prototype.$whitelabel.fbPixelEnabled) {\r\n const fbpSubscribers = createFBPListeners(\r\n Vue.prototype.$whitelabel.fbPixelEnabled,\r\n Vue.analytics.fbq,\r\n )\r\n\r\n dispatcher.register(fbpSubscribers)\r\n }\r\n\r\n Vue.prototype.$eventDispatcher = dispatcher\r\n } catch (err) {\r\n logger.error('unable to start gtm subscriber', err)\r\n }\r\n },\r\n }).$mount('#app')\r\n\r\n store.dispatch('loadAccesToken')\r\n store.dispatch('storeInit', {\r\n site: Vue.prototype.$whitelabel.short.toLowerCase(),\r\n locale: process.env.VUE_APP_I18N_LOCALE,\r\n })\r\n})\r\n","import mod from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=scss&\"","import { \r\n Order_Create as oc, \r\n Order_AddArticle as oac,\r\n Order_RemoveArticle as oar,\r\n Order_Retrive as or,\r\n Order_ChangeArticle as oca,\r\n Order_UpdateCustomer as uc,\r\n Order_SetOrderToWireTransfer as pd,\r\n Order_PayPalTransactionComplete as pp, Order_CloseOrder as close,\r\n Order_Reduction as reductionInfo,\r\n Order_AddReduction as reduction,\r\n Order_PrepareForCheckout as prepare,\r\n Order_RemoveReduction as remReduction,\r\n Order_OptinOptions as optinOptions,\r\n Order_OrderNotifications as notifications,\r\n Order_ClaimOrder as claim,\r\n Order_AmazonPayCreateCheckoutSession as amaCheckout,\r\n Order_AmazonPayProcessCheckoutSession as amaAuth,\r\n Order_AmazonPayCreateRedirect as amaRedirect,\r\n Order_AmazonPayCompletePayment as amaComplete,\r\n Order_MetaData,\r\n Order_AddGiftCard as addGiftCard,\r\n Order_RemoveGiftCard as removeGiftCard,\r\n Order_SelectedPayment as retriveSelectedPayment\r\n\r\n} from \"./backend\"\r\n\r\nlet defaultCurrency = 'EUR';\r\n\r\nexport const setShopCurrency = (currency) => {\r\n defaultCurrency = currency;\r\n}\r\n\r\nconst createOrder = async () => {\r\n let { data } = await oc({\r\n cmd: {\r\n currency: defaultCurrency\r\n }\r\n });\r\n if(data){\r\n localStorage.setItem('CURRENT_ID',data.id);\r\n localStorage.setItem('TOKEN', data.token);\r\n }\r\n return data;\r\n}\r\n\r\n\r\nconst updateCurrentOrder = (id, token) => {\r\n localStorage.setItem('CURRENT_ID', id);\r\n localStorage.setItem('TOKEN', token);\r\n}\r\n\r\nconst resetOrderStorage = () => {\r\n localStorage.removeItem('CURRENT_ID');\r\n localStorage.removeItem('TOKEN');\r\n}\r\n\r\nconst closeOrder = async () => {\r\n let { data } = await close({ cmd: {\r\n orderId: localStorage.getItem('CURRENT_ID'),\r\n key: localStorage.getItem('TOKEN')\r\n }});\r\n return data;\r\n}\r\n\r\nconst createOrderIfNeeded = async () => {\r\n if(!localStorage.getItem('CURRENT_ID') || !localStorage.getItem('TOKEN')){\r\n return await createOrder();\r\n }else{\r\n return await checkOpenOrder();\r\n }\r\n}\r\n\r\n\r\nconst checkOpenOrder = async () => {\r\n if(localStorage.getItem('CURRENT_ID') && localStorage.getItem('TOKEN')){\r\n let { data } = await or({\r\n id: localStorage.getItem('CURRENT_ID'),\r\n key: localStorage.getItem('TOKEN')\r\n });\r\n return data;\r\n }else{\r\n return {};\r\n }\r\n}\r\n\r\nconst get = async (id,key) => {\r\n let { data } = await or({\r\n id: id,\r\n key: key\r\n });\r\n return data;\r\n}\r\n\r\nconst metaData = async (id,key) => {\r\n let { data } = await Order_MetaData({\r\n id: id,\r\n key: key\r\n });\r\n return data;\r\n \r\n}\r\n\r\nconst addItem = async (variantId) => {\r\n\r\n let r = {\r\n orderId: localStorage.getItem('CURRENT_ID'),\r\n key: localStorage.getItem('TOKEN'),\r\n variantId: variantId,\r\n quantity: 1,\r\n }\r\n const stored = localStorage.getItem('referal')\r\n if (stored) {\r\n const ref = JSON.parse(stored)\r\n r.ref = ref.code;\r\n r.referer = ref.referer;\r\n r.refPath = ref.path;\r\n r.refPayload = ref.add;\r\n r.refUsed = ref.created\r\n }\r\n let { data } = await oac({ cmd: r });\r\n return data;\r\n}\r\n\r\nconst removeItem = async (item) => {\r\n if(localStorage.getItem('CURRENT_ID') && localStorage.getItem('TOKEN')){\r\n let { data } = await oar({ cmd: {\r\n orderId: localStorage.getItem('CURRENT_ID'),\r\n key: localStorage.getItem('TOKEN'),\r\n itemId: item.id\r\n }});\r\n return data;\r\n }\r\n}\r\n\r\nconst changeQuantity = async (itemId, quantity) => {\r\n let { data } = await oca({ cmd: {\r\n orderId: localStorage.getItem('CURRENT_ID'),\r\n key: localStorage.getItem('TOKEN'),\r\n itemId: itemId,\r\n quantity: quantity\r\n }});\r\n return data;\r\n}\r\n\r\nconst updateUserData = async (userData) => {\r\n let tmp = userData;\r\n tmp.orderId = localStorage.getItem('CURRENT_ID');\r\n tmp.key = localStorage.getItem('TOKEN');\r\n let { data } = await uc({ cmd: tmp });\r\n return data;\r\n}\r\n\r\nconst addGiftCardToOrder = async (tan) => {\r\n let { data } = await addGiftCard({ cmd: {\r\n orderId: localStorage.getItem('CURRENT_ID'),\r\n key: localStorage.getItem('TOKEN'),\r\n tan: tan\r\n }});\r\n return data;\r\n}\r\n\r\nconst removeGiftCardFromOrder = async (tan) => {\r\n let { data } = await removeGiftCard({ cmd: {\r\n orderId: localStorage.getItem('CURRENT_ID'),\r\n key: localStorage.getItem('TOKEN'),\r\n tan: tan,\r\n }});\r\n return data;\r\n}\r\n\r\n\r\nconst setWireTransfer = async () => { \r\n let { data } = await pd({ cmd: {\r\n orderId: localStorage.getItem('CURRENT_ID'),\r\n key: localStorage.getItem('TOKEN')\r\n }});\r\n return data;\r\n}\r\n\r\nconst refreshPaymentType = async () => { \r\n let { data } = await retriveSelectedPayment( {\r\n id: localStorage.getItem('CURRENT_ID'),\r\n key: localStorage.getItem('TOKEN')\r\n });\r\n return data;\r\n}\r\n\r\nconst completePayPalTransaction = async (paypalOrderId) => {\r\n let { data } = await pp({ cmd: {\r\n orderId: localStorage.getItem('CURRENT_ID'),\r\n key: localStorage.getItem('TOKEN'),\r\n payPalOrderId: paypalOrderId\r\n }});\r\n return data;\r\n}\r\n\r\nconst applyReduction = async (code) => {\r\n let { data } = await reduction({ cmd: {\r\n orderId: localStorage.getItem('CURRENT_ID'),\r\n key: localStorage.getItem('TOKEN'),\r\n code: code\r\n }});\r\n return data;\r\n}\r\n\r\nconst removeReduction = async () => {\r\n let { data } = await remReduction({ cmd: {\r\n orderId: localStorage.getItem('CURRENT_ID'),\r\n key: localStorage.getItem('TOKEN')\r\n }});\r\n return data;\r\n}\r\n\r\n\r\nconst getReductionInfo = async (id) => {\r\n let { data } = await reductionInfo({id: id});\r\n return data;\r\n}\r\n\r\nconst prepareForCheckout = async() => {\r\n let { data } = await prepare({\r\n id: localStorage.getItem('CURRENT_ID'),\r\n key: localStorage.getItem('TOKEN')\r\n });\r\n return data;\r\n}\r\n\r\nconst createAmazonCheckoutSession = async () => {\r\n let { data } = await amaCheckout({\r\n cmd: {\r\n orderId: localStorage.getItem('CURRENT_ID'),\r\n key: localStorage.getItem('TOKEN')\r\n }\r\n });\r\n return data;\r\n}\r\n\r\nconst authorizeAmazonCheckoutSession = async (session) => {\r\n let { data } = await amaAuth({\r\n cmd: {\r\n orderId: localStorage.getItem('CURRENT_ID'),\r\n key: localStorage.getItem('TOKEN'),\r\n amazonCheckoutSessionId: session\r\n }\r\n });\r\n return data;\r\n}\r\n\r\nconst createAmazonPayRedirect = async (session) => {\r\n\r\n let { data } = await amaRedirect({\r\n cmd: {\r\n orderId: localStorage.getItem('CURRENT_ID'),\r\n key: localStorage.getItem('TOKEN'),\r\n amazonCheckoutSessionId: session\r\n }\r\n });\r\n return data;\r\n}\r\n\r\nconst completeAmazonPayPayment = async (session) => {\r\n\r\n let { data } = await amaComplete({\r\n cmd: {\r\n orderId: localStorage.getItem('CURRENT_ID'),\r\n key: localStorage.getItem('TOKEN'),\r\n amazonCheckoutSessionId: session\r\n }\r\n });\r\n return data;\r\n \r\n}\r\n\r\nconst setOptinOptions = async (email, phone, newsletter) => {\r\n let { data } = await optinOptions({\r\n cmd: {\r\n orderId: localStorage.getItem('CURRENT_ID'),\r\n key: localStorage.getItem('TOKEN'),\r\n optinEmail: email,\r\n optinPhone: phone,\r\n optinNewsletter: newsletter\r\n }\r\n });\r\n return data;\r\n}\r\n\r\nconst getOrderNotifications = async() => {\r\n try {\r\n let { data } = await notifications({\r\n id: localStorage.getItem('CURRENT_ID'),\r\n key: localStorage.getItem('TOKEN')\r\n });\r\n return data;\r\n }catch{\r\n return [];\r\n }\r\n}\r\n\r\nconst claimOrder = async (id, token) => {\r\n let { data } = await claim({\r\n req: {\r\n orderId: id,\r\n token: token\r\n }\r\n });\r\n return data;\r\n}\r\n\r\n\r\n\r\nexport default {\r\n checkOpenOrder,\r\n addItem,\r\n removeItem,\r\n createOrderIfNeeded,\r\n changeQuantity,\r\n updateUserData,\r\n setWireTransfer,\r\n completePayPalTransaction,\r\n get,\r\n closeOrder,\r\n applyReduction,\r\n getReductionInfo,\r\n removeReduction,\r\n prepareForCheckout,\r\n setOptinOptions,\r\n getOrderNotifications,\r\n updateCurrentOrder,\r\n claimOrder,\r\n createAmazonCheckoutSession,\r\n authorizeAmazonCheckoutSession,\r\n createAmazonPayRedirect,\r\n completeAmazonPayPayment,\r\n resetOrderStorage,\r\n metaData,\r\n addGiftCardToOrder,\r\n removeGiftCardFromOrder,\r\n refreshPaymentType\r\n}","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Adac.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Adac.vue?vue&type=style&index=0&lang=scss&\"","import { Offer_Offer as os, \r\n Offer_OfferData as offerData,\r\n Offer_GetAvailableThemes as themes,\r\n Offer_GetAvailableCountries as countries,\r\n Offer_OfferBySlug as offerBySlug,\r\n Offer_TravelDeals as deals,\r\n Offer_Promotion as prom,\r\n Offer_OfferByVariantId as obyv,\r\n Offer_OfferByContactSlug as contact } from \"./backend\"\r\n\r\nconst getOffer = async (id) => {\r\n let { data } = await os({\r\n id: id\r\n });\r\n return data;\r\n}\r\n\r\nconst getOfferByVariantId = async (variantId) => {\r\n let { data } = await obyv({\r\n id: variantId\r\n });\r\n return data;\r\n}\r\n\r\nconst getOfferForContact = async (slug, page, pageSize) => {\r\n let { data } = await contact({\r\n slug: slug,\r\n page: page,\r\n pageSize: pageSize\r\n });\r\n return data;\r\n}\r\n\r\nconst getOfferBySlug = async (slug) => {\r\n let { data } = await offerBySlug({\r\n slug: slug\r\n });\r\n return data;\r\n}\r\n\r\nconst getOffersWithDealPromotion = async () => {\r\n let { data } = await deals();\r\n return data;\r\n}\r\n\r\nconst getOffersWithCustomPromotion = async (promotion) => {\r\n let { data } = await prom({name: promotion});\r\n return data;\r\n}\r\n\r\nconst getOfferData = async (id) => {\r\n let { data } = await offerData({\r\n id: id,\r\n $config: {\r\n _silent: true\r\n }\r\n });\r\n if(data && data.texts && data.texts.length > 0 ){\r\n data.texts = data.texts.sort((a,b) => {\r\n if(a.position && b.position){\r\n if (a.position < b.position) return -1\r\n if (a.position > b.position) return 1\r\n }\r\n return 0\r\n });\r\n }\r\n return data;\r\n}\r\n\r\nconst getThemesForMenu = async () => {\r\n let res = await themes();\r\n return res.data;\r\n}\r\n\r\n\r\nconst getCountriesForMenu = async () => {\r\n let { data } = await countries();\r\n return data;\r\n}\r\n\r\nconst getMenu = async() => {\r\n return {\r\n countries: await getCountriesForMenu(),\r\n themes: await getThemesForMenu()\r\n }\r\n}\r\n\r\nexport default {\r\n getOffer,\r\n getMenu,\r\n getOfferData,\r\n getOfferBySlug,\r\n getOffersWithDealPromotion,\r\n getOfferByVariantId,\r\n getOfferForContact,\r\n getOffersWithCustomPromotion\r\n}","import {\n Order_ClosedOrdersForUser as orderForUser,\n Account_GetUserData as get,\n Account_UpdateUserData as update,\n Account_ChangePassword as changePw,\n Account_PasswordForgotten as reset,\n Account_PasswordForgotten2 as forgotten\n} from './backend'\n\n\nconst getOrderForUser = async (page) => {\n let { data } = await orderForUser({\n page: page\n });\n return data;\n}\n\nconst updateUser = async(userdata) => {\n let {data} = await update({\n userData: userdata\n });\n return data;\n}\n\nconst getUser = async() => {\n let {data} = await get();\n return data;\n}\n\nconst changeUserPassword = async (oldpwd,newpwd) => {\n let {data} = await changePw({\n req: {\n oldPassword: oldpwd,\n newPassword: newpwd\n }\n });\n return data;\n}\n\nconst resetPassword = async (email, token, pwd) => {\n let {data} = await reset({\n cmd: {\n email: email,\n token: token,\n newPassword: pwd\n }\n })\n return data;\n}\n\nconst passwordForgotten = async (email) => {\n let {data} = await forgotten({\n cmd: {\n email: email \n }\n })\n return data;\n}\n\nexport default {\n getOrderForUser,\n updateUser,\n getUser,\n changeUserPassword,\n resetPassword,\n passwordForgotten\n}","import Vue from 'vue'\nimport VueI18n from 'vue-i18n'\n\nVue.use(VueI18n)\n\nfunction loadLocaleMessages () {\n const locales = require.context('./locales', true, /[A-Za-z0-9-_,\\s]+\\.json$/i)\n const messages = {}\n locales.keys().forEach(key => {\n const matched = key.match(/([A-Za-z0-9-_]+)\\./i)\n if (matched && matched.length > 1) {\n const locale = matched[1]\n messages[locale] = locales(key)\n }\n })\n return messages\n}\n\nexport default new VueI18n({\n locale: process.env.VUE_APP_I18N_LOCALE || 'de',\n fallbackLocale: process.env.VUE_APP_I18N_FALLBACK_LOCALE || 'de',\n messages: loadLocaleMessages()\n})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (this.$whitelabel.heroBadge)?_c('div',{staticClass:\"hero-badge\",class:{'hero-badge--standalone': !this.$whitelabel.isStandalone}},[(this.$whitelabel.heroBadge.extUrl)?_c('a',{staticClass:\"hero-badge-link\",attrs:{\"href\":(\"\" + (this.$whitelabel.heroBadge.extUrl)),\"rel\":\"noopener noreferrer\",\"target\":\"_blank\"}},[_c('img',{staticClass:\"hero-badge-img\",attrs:{\"src\":(\"https://assets.urlaubsgutschein.kaufen\" + (this.$whitelabel.assetUrl) + \"/\" + (this.$whitelabel.heroBadge.file)),\"alt\":\"\"}})]):_vm._e(),(!this.$whitelabel.heroBadge.extUrl)?_c('img',{staticClass:\"hero-badge-img\",attrs:{\"src\":(\"https://assets.urlaubsgutschein.kaufen\" + (this.$whitelabel.assetUrl) + \"/\" + (this.$whitelabel.heroBadge.file)),\"alt\":\"\"}}):_vm._e()]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeroBadge.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeroBadge.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./HeroBadge.vue?vue&type=template&id=12767b9f&\"\nimport script from \"./HeroBadge.vue?vue&type=script&lang=js&\"\nexport * from \"./HeroBadge.vue?vue&type=script&lang=js&\"\nimport style0 from \"./HeroBadge.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import {\n Auth_Login as logIn,\n Auth_Refresh as refreshToken,\n Account_Register as register\n } from './backend'\n \n //with credentials is ONLY needed\n //when calling login or refresh\n //as refresh tokens are HTTP ONLY cookies\n //to protect the refresh tokens against XSS attacks\n \n const login = async (usr, pwd) => {\n let {data} = await logIn({\n cmd: {\n userName: usr,\n password: pwd,\n orderId: localStorage.getItem('CURRENT_ID'),\n token: localStorage.getItem('TOKEN')\n },\n $config: {\n withCredentials: true,\n },\n })\n return data\n }\n \n const refresh = async token => {\n let {data} = await refreshToken({\n cmd: {\n accessToken: token,\n },\n $config: {\n withCredentials: true,\n },\n })\n return data\n }\n \n \n const registerCustomerUser = async (req) => {\n let {data} = await register({\n req: req\n })\n return data;\n }\n\n const parseJwt = token => {\n let base64Url = token.split('.')[1]\n let base64 = base64Url.replace(/-/g, '+').replace(/_/g, '/')\n const jsonPayload = decodeURIComponent(\n atob(base64)\n .split('')\n .map(function(c) {\n return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2)\n })\n .join(''),\n )\n \n return JSON.parse(jsonPayload)\n }\n \n export default {\n login,\n refresh,\n parseJwt,\n registerCustomerUser\n }\n ","import Vue from 'vue'\nimport Vuex from 'vuex'\nimport Store from './store/index'\nVue.use(Vuex)\n\nexport default Store;\n","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeroBadge.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeroBadge.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_Navigation.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_Navigation.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeroInfoStandalone.vue?vue&type=style&index=0&id=7652ff66&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeroInfoStandalone.vue?vue&type=style&index=0&id=7652ff66&scoped=true&lang=scss&\"","/* eslint-disable */\r\nimport axios from 'axios'\r\nimport qs from 'qs'\r\nlet domain = ''\r\nexport const getDomain = () => {\r\n return domain\r\n}\r\nexport const setDomain = $domain => {\r\n domain = $domain\r\n}\r\nexport const request = (method, url, body, queryParameters, form, config) => {\r\n method = method.toLowerCase()\r\n let keys = Object.keys(queryParameters)\r\n let queryUrl = url\r\n if (keys.length > 0) {\r\n queryUrl = url + '?' + qs.stringify(queryParameters)\r\n }\r\n // let queryUrl = url+(keys.length > 0 ? '?' + (keys.map(key => key + '=' + encodeURIComponent(queryParameters[key])).join('&')) : '')\r\n if (body) {\r\n if (method === 'delete') {\r\n return axios[method](\r\n queryUrl,\r\n {\r\n data: body,\r\n },\r\n config,\r\n )\r\n }\r\n return axios[method](queryUrl, body, config)\r\n } else if (method === 'get') {\r\n return axios[method](\r\n queryUrl,\r\n {\r\n params: form,\r\n },\r\n config,\r\n )\r\n } else {\r\n return axios[method](queryUrl, qs.stringify(form), config)\r\n }\r\n}\r\n/*==========================================================\r\n * \r\n ==========================================================*/\r\n/**\r\n *\r\n * request: Account_Register\r\n * url: Account_RegisterURL\r\n * method: Account_Register_TYPE\r\n * raw_url: Account_Register_RAW_URL\r\n * @param req -\r\n */\r\nexport const Account_Register = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/account/register'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['req'] !== undefined) {\r\n body = parameters['req']\r\n }\r\n if (parameters['req'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: req'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('post', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Account_Register_RAW_URL = function() {\r\n return '/api/account/register'\r\n}\r\nexport const Account_Register_TYPE = function() {\r\n return 'post'\r\n}\r\nexport const Account_RegisterURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/account/register'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Account_PasswordForgotten\r\n * url: Account_PasswordForgottenURL\r\n * method: Account_PasswordForgotten_TYPE\r\n * raw_url: Account_PasswordForgotten_RAW_URL\r\n * @param cmd -\r\n */\r\nexport const Account_PasswordForgotten = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/account/reset-password'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['cmd'] !== undefined) {\r\n body = parameters['cmd']\r\n }\r\n if (parameters['cmd'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: cmd'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('put', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Account_PasswordForgotten_RAW_URL = function() {\r\n return '/api/account/reset-password'\r\n}\r\nexport const Account_PasswordForgotten_TYPE = function() {\r\n return 'put'\r\n}\r\nexport const Account_PasswordForgottenURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/account/reset-password'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Account_PasswordForgotten2\r\n * url: Account_PasswordForgotten2URL\r\n * method: Account_PasswordForgotten2_TYPE\r\n * raw_url: Account_PasswordForgotten2_RAW_URL\r\n * @param cmd -\r\n */\r\nexport const Account_PasswordForgotten2 = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/account/password-forgotten'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['cmd'] !== undefined) {\r\n body = parameters['cmd']\r\n }\r\n if (parameters['cmd'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: cmd'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('post', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Account_PasswordForgotten2_RAW_URL = function() {\r\n return '/api/account/password-forgotten'\r\n}\r\nexport const Account_PasswordForgotten2_TYPE = function() {\r\n return 'post'\r\n}\r\nexport const Account_PasswordForgotten2URL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/account/password-forgotten'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Account_ChangePassword\r\n * url: Account_ChangePasswordURL\r\n * method: Account_ChangePassword_TYPE\r\n * raw_url: Account_ChangePassword_RAW_URL\r\n * @param req -\r\n */\r\nexport const Account_ChangePassword = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/account/change-password'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['req'] !== undefined) {\r\n body = parameters['req']\r\n }\r\n if (parameters['req'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: req'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('put', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Account_ChangePassword_RAW_URL = function() {\r\n return '/api/account/change-password'\r\n}\r\nexport const Account_ChangePassword_TYPE = function() {\r\n return 'put'\r\n}\r\nexport const Account_ChangePasswordURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/account/change-password'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Account_GetUserData\r\n * url: Account_GetUserDataURL\r\n * method: Account_GetUserData_TYPE\r\n * raw_url: Account_GetUserData_RAW_URL\r\n */\r\nexport const Account_GetUserData = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/account/me'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Account_GetUserData_RAW_URL = function() {\r\n return '/api/account/me'\r\n}\r\nexport const Account_GetUserData_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Account_GetUserDataURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/account/me'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Account_UpdateUserData\r\n * url: Account_UpdateUserDataURL\r\n * method: Account_UpdateUserData_TYPE\r\n * raw_url: Account_UpdateUserData_RAW_URL\r\n * @param userData -\r\n */\r\nexport const Account_UpdateUserData = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/account/me'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['userData'] !== undefined) {\r\n body = parameters['userData']\r\n }\r\n if (parameters['userData'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: userData'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('put', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Account_UpdateUserData_RAW_URL = function() {\r\n return '/api/account/me'\r\n}\r\nexport const Account_UpdateUserData_TYPE = function() {\r\n return 'put'\r\n}\r\nexport const Account_UpdateUserDataURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/account/me'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Auth_Login\r\n * url: Auth_LoginURL\r\n * method: Auth_Login_TYPE\r\n * raw_url: Auth_Login_RAW_URL\r\n * @param cmd -\r\n */\r\nexport const Auth_Login = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/auth/login'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['cmd'] !== undefined) {\r\n body = parameters['cmd']\r\n }\r\n if (parameters['cmd'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: cmd'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('post', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Auth_Login_RAW_URL = function() {\r\n return '/api/auth/login'\r\n}\r\nexport const Auth_Login_TYPE = function() {\r\n return 'post'\r\n}\r\nexport const Auth_LoginURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/auth/login'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Auth_Refresh\r\n * url: Auth_RefreshURL\r\n * method: Auth_Refresh_TYPE\r\n * raw_url: Auth_Refresh_RAW_URL\r\n * @param cmd -\r\n */\r\nexport const Auth_Refresh = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/auth/connect/refresh'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['cmd'] !== undefined) {\r\n body = parameters['cmd']\r\n }\r\n if (parameters['cmd'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: cmd'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('post', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Auth_Refresh_RAW_URL = function() {\r\n return '/api/auth/connect/refresh'\r\n}\r\nexport const Auth_Refresh_TYPE = function() {\r\n return 'post'\r\n}\r\nexport const Auth_RefreshURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/auth/connect/refresh'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Debug_SendTestEmail\r\n * url: Debug_SendTestEmailURL\r\n * method: Debug_SendTestEmail_TYPE\r\n * raw_url: Debug_SendTestEmail_RAW_URL\r\n * @param pathToTemplate -\r\n * @param toEmail -\r\n * @param isWire -\r\n * @param isPaid -\r\n */\r\nexport const Debug_SendTestEmail = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/debug'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['pathToTemplate'] !== undefined) {\r\n queryParameters['pathToTemplate'] = parameters['pathToTemplate']\r\n }\r\n if (parameters['toEmail'] !== undefined) {\r\n queryParameters['toEmail'] = parameters['toEmail']\r\n }\r\n if (parameters['isWire'] !== undefined) {\r\n queryParameters['isWire'] = parameters['isWire']\r\n }\r\n if (parameters['isPaid'] !== undefined) {\r\n queryParameters['isPaid'] = parameters['isPaid']\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Debug_SendTestEmail_RAW_URL = function() {\r\n return '/api/debug'\r\n}\r\nexport const Debug_SendTestEmail_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Debug_SendTestEmailURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/debug'\r\n if (parameters['pathToTemplate'] !== undefined) {\r\n queryParameters['pathToTemplate'] = parameters['pathToTemplate']\r\n }\r\n if (parameters['toEmail'] !== undefined) {\r\n queryParameters['toEmail'] = parameters['toEmail']\r\n }\r\n if (parameters['isWire'] !== undefined) {\r\n queryParameters['isWire'] = parameters['isWire']\r\n }\r\n if (parameters['isPaid'] !== undefined) {\r\n queryParameters['isPaid'] = parameters['isPaid']\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Guard_VerifyAlphaNumericGuard\r\n * url: Guard_VerifyAlphaNumericGuardURL\r\n * method: Guard_VerifyAlphaNumericGuard_TYPE\r\n * raw_url: Guard_VerifyAlphaNumericGuard_RAW_URL\r\n * @param req -\r\n */\r\nexport const Guard_VerifyAlphaNumericGuard = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/guard/number'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['req'] !== undefined) {\r\n body = parameters['req']\r\n }\r\n if (parameters['req'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: req'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('post', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Guard_VerifyAlphaNumericGuard_RAW_URL = function() {\r\n return '/api/guard/number'\r\n}\r\nexport const Guard_VerifyAlphaNumericGuard_TYPE = function() {\r\n return 'post'\r\n}\r\nexport const Guard_VerifyAlphaNumericGuardURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/guard/number'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Hotel_AllOffers\r\n * url: Hotel_AllOffersURL\r\n * method: Hotel_AllOffers_TYPE\r\n * raw_url: Hotel_AllOffers_RAW_URL\r\n */\r\nexport const Hotel_AllOffers = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/hotel/for-map'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Hotel_AllOffers_RAW_URL = function() {\r\n return '/api/hotel/for-map'\r\n}\r\nexport const Hotel_AllOffers_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Hotel_AllOffersURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/hotel/for-map'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Hotel_CloseTo\r\n * url: Hotel_CloseToURL\r\n * method: Hotel_CloseTo_TYPE\r\n * raw_url: Hotel_CloseTo_RAW_URL\r\n * @param latitude -\r\n * @param longitude -\r\n * @param radius -\r\n */\r\nexport const Hotel_CloseTo = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/hotel/close-to'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['latitude'] !== undefined) {\r\n queryParameters['latitude'] = parameters['latitude']\r\n }\r\n if (parameters['longitude'] !== undefined) {\r\n queryParameters['longitude'] = parameters['longitude']\r\n }\r\n if (parameters['radius'] !== undefined) {\r\n queryParameters['radius'] = parameters['radius']\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Hotel_CloseTo_RAW_URL = function() {\r\n return '/api/hotel/close-to'\r\n}\r\nexport const Hotel_CloseTo_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Hotel_CloseToURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/hotel/close-to'\r\n if (parameters['latitude'] !== undefined) {\r\n queryParameters['latitude'] = parameters['latitude']\r\n }\r\n if (parameters['longitude'] !== undefined) {\r\n queryParameters['longitude'] = parameters['longitude']\r\n }\r\n if (parameters['radius'] !== undefined) {\r\n queryParameters['radius'] = parameters['radius']\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Hotel_BoundingBox\r\n * url: Hotel_BoundingBoxURL\r\n * method: Hotel_BoundingBox_TYPE\r\n * raw_url: Hotel_BoundingBox_RAW_URL\r\n * @param latitudeTop -\r\n * @param longitudeTop -\r\n * @param latitudeBottom -\r\n * @param longitudeBottom -\r\n */\r\nexport const Hotel_BoundingBox = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/hotel/bounding-box'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['latitudeTop'] !== undefined) {\r\n queryParameters['latitudeTop'] = parameters['latitudeTop']\r\n }\r\n if (parameters['longitudeTop'] !== undefined) {\r\n queryParameters['longitudeTop'] = parameters['longitudeTop']\r\n }\r\n if (parameters['latitudeBottom'] !== undefined) {\r\n queryParameters['latitudeBottom'] = parameters['latitudeBottom']\r\n }\r\n if (parameters['longitudeBottom'] !== undefined) {\r\n queryParameters['longitudeBottom'] = parameters['longitudeBottom']\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Hotel_BoundingBox_RAW_URL = function() {\r\n return '/api/hotel/bounding-box'\r\n}\r\nexport const Hotel_BoundingBox_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Hotel_BoundingBoxURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/hotel/bounding-box'\r\n if (parameters['latitudeTop'] !== undefined) {\r\n queryParameters['latitudeTop'] = parameters['latitudeTop']\r\n }\r\n if (parameters['longitudeTop'] !== undefined) {\r\n queryParameters['longitudeTop'] = parameters['longitudeTop']\r\n }\r\n if (parameters['latitudeBottom'] !== undefined) {\r\n queryParameters['latitudeBottom'] = parameters['latitudeBottom']\r\n }\r\n if (parameters['longitudeBottom'] !== undefined) {\r\n queryParameters['longitudeBottom'] = parameters['longitudeBottom']\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Hotel_List\r\n * url: Hotel_ListURL\r\n * method: Hotel_List_TYPE\r\n * raw_url: Hotel_List_RAW_URL\r\n * @param page -\r\n * @param pageSize -\r\n */\r\nexport const Hotel_List = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/hotel/list/{page}/{pageSize}'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n path = path.replace('{page}', `${parameters['page']}`)\r\n if (parameters['page'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: page'))\r\n }\r\n path = path.replace('{pageSize}', `${parameters['pageSize']}`)\r\n if (parameters['pageSize'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: pageSize'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Hotel_List_RAW_URL = function() {\r\n return '/api/hotel/list/{page}/{pageSize}'\r\n}\r\nexport const Hotel_List_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Hotel_ListURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/hotel/list/{page}/{pageSize}'\r\n path = path.replace('{page}', `${parameters['page']}`)\r\n path = path.replace('{pageSize}', `${parameters['pageSize']}`)\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Hotel_Hotel\r\n * url: Hotel_HotelURL\r\n * method: Hotel_Hotel_TYPE\r\n * raw_url: Hotel_Hotel_RAW_URL\r\n * @param slug -\r\n */\r\nexport const Hotel_Hotel = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/hotel/{slug}'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n path = path.replace('{slug}', `${parameters['slug']}`)\r\n if (parameters['slug'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: slug'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Hotel_Hotel_RAW_URL = function() {\r\n return '/api/hotel/{slug}'\r\n}\r\nexport const Hotel_Hotel_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Hotel_HotelURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/hotel/{slug}'\r\n path = path.replace('{slug}', `${parameters['slug']}`)\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Insurance_BookInsurance\r\n * url: Insurance_BookInsuranceURL\r\n * method: Insurance_BookInsurance_TYPE\r\n * raw_url: Insurance_BookInsurance_RAW_URL\r\n * @param cmd -\r\n */\r\nexport const Insurance_BookInsurance = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/insurance/book'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['cmd'] !== undefined) {\r\n body = parameters['cmd']\r\n }\r\n if (parameters['cmd'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: cmd'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('post', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Insurance_BookInsurance_RAW_URL = function() {\r\n return '/api/insurance/book'\r\n}\r\nexport const Insurance_BookInsurance_TYPE = function() {\r\n return 'post'\r\n}\r\nexport const Insurance_BookInsuranceURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/insurance/book'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Invoice_DownloadInvoice\r\n * url: Invoice_DownloadInvoiceURL\r\n * method: Invoice_DownloadInvoice_TYPE\r\n * raw_url: Invoice_DownloadInvoice_RAW_URL\r\n * @param id -\r\n * @param key -\r\n * @param invoiceNumber -\r\n */\r\nexport const Invoice_DownloadInvoice = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/invoice/download/{id}/{key}/{invoiceNumber}.pdf'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n if (parameters['id'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: id'))\r\n }\r\n path = path.replace('{key}', `${parameters['key']}`)\r\n if (parameters['key'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: key'))\r\n }\r\n path = path.replace('{invoiceNumber}', `${parameters['invoiceNumber']}`)\r\n if (parameters['invoiceNumber'] === undefined) {\r\n return Promise.reject(\r\n new Error('Missing required parameter: invoiceNumber'),\r\n )\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Invoice_DownloadInvoice_RAW_URL = function() {\r\n return '/api/invoice/download/{id}/{key}/{invoiceNumber}.pdf'\r\n}\r\nexport const Invoice_DownloadInvoice_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Invoice_DownloadInvoiceURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/invoice/download/{id}/{key}/{invoiceNumber}.pdf'\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n path = path.replace('{key}', `${parameters['key']}`)\r\n path = path.replace('{invoiceNumber}', `${parameters['invoiceNumber']}`)\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Offer_Offer\r\n * url: Offer_OfferURL\r\n * method: Offer_Offer_TYPE\r\n * raw_url: Offer_Offer_RAW_URL\r\n * @param id -\r\n */\r\nexport const Offer_Offer = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/offer'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['id'] !== undefined) {\r\n queryParameters['id'] = parameters['id']\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Offer_Offer_RAW_URL = function() {\r\n return '/api/offer'\r\n}\r\nexport const Offer_Offer_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Offer_OfferURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/offer'\r\n if (parameters['id'] !== undefined) {\r\n queryParameters['id'] = parameters['id']\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Offer_OfferByVariantId\r\n * url: Offer_OfferByVariantIdURL\r\n * method: Offer_OfferByVariantId_TYPE\r\n * raw_url: Offer_OfferByVariantId_RAW_URL\r\n * @param id -\r\n */\r\nexport const Offer_OfferByVariantId = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/offer/variant/{id}'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n if (parameters['id'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: id'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Offer_OfferByVariantId_RAW_URL = function() {\r\n return '/api/offer/variant/{id}'\r\n}\r\nexport const Offer_OfferByVariantId_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Offer_OfferByVariantIdURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/offer/variant/{id}'\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Offer_OfferBySlug\r\n * url: Offer_OfferBySlugURL\r\n * method: Offer_OfferBySlug_TYPE\r\n * raw_url: Offer_OfferBySlug_RAW_URL\r\n * @param slug -\r\n */\r\nexport const Offer_OfferBySlug = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/offer/slug/{slug}'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n path = path.replace('{slug}', `${parameters['slug']}`)\r\n if (parameters['slug'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: slug'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Offer_OfferBySlug_RAW_URL = function() {\r\n return '/api/offer/slug/{slug}'\r\n}\r\nexport const Offer_OfferBySlug_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Offer_OfferBySlugURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/offer/slug/{slug}'\r\n path = path.replace('{slug}', `${parameters['slug']}`)\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Offer_OfferByContactSlug\r\n * url: Offer_OfferByContactSlugURL\r\n * method: Offer_OfferByContactSlug_TYPE\r\n * raw_url: Offer_OfferByContactSlug_RAW_URL\r\n * @param slug -\r\n * @param page -\r\n * @param pageSize -\r\n */\r\nexport const Offer_OfferByContactSlug = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/offer/hotel/{slug}/{page}/{pageSize}'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n path = path.replace('{slug}', `${parameters['slug']}`)\r\n if (parameters['slug'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: slug'))\r\n }\r\n path = path.replace('{page}', `${parameters['page']}`)\r\n if (parameters['page'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: page'))\r\n }\r\n path = path.replace('{pageSize}', `${parameters['pageSize']}`)\r\n if (parameters['pageSize'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: pageSize'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Offer_OfferByContactSlug_RAW_URL = function() {\r\n return '/api/offer/hotel/{slug}/{page}/{pageSize}'\r\n}\r\nexport const Offer_OfferByContactSlug_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Offer_OfferByContactSlugURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/offer/hotel/{slug}/{page}/{pageSize}'\r\n path = path.replace('{slug}', `${parameters['slug']}`)\r\n path = path.replace('{page}', `${parameters['page']}`)\r\n path = path.replace('{pageSize}', `${parameters['pageSize']}`)\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Offer_OfferData\r\n * url: Offer_OfferDataURL\r\n * method: Offer_OfferData_TYPE\r\n * raw_url: Offer_OfferData_RAW_URL\r\n * @param id -\r\n */\r\nexport const Offer_OfferData = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/offer/data'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['id'] !== undefined) {\r\n queryParameters['id'] = parameters['id']\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Offer_OfferData_RAW_URL = function() {\r\n return '/api/offer/data'\r\n}\r\nexport const Offer_OfferData_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Offer_OfferDataURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/offer/data'\r\n if (parameters['id'] !== undefined) {\r\n queryParameters['id'] = parameters['id']\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Offer_Search\r\n * url: Offer_SearchURL\r\n * method: Offer_Search_TYPE\r\n * raw_url: Offer_Search_RAW_URL\r\n * @param searchRequest -\r\n */\r\nexport const Offer_Search = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/offer/search'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['searchRequest'] !== undefined) {\r\n body = parameters['searchRequest']\r\n }\r\n if (parameters['searchRequest'] === undefined) {\r\n return Promise.reject(\r\n new Error('Missing required parameter: searchRequest'),\r\n )\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('post', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Offer_Search_RAW_URL = function() {\r\n return '/api/offer/search'\r\n}\r\nexport const Offer_Search_TYPE = function() {\r\n return 'post'\r\n}\r\nexport const Offer_SearchURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/offer/search'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Offer_TravelDeals\r\n * url: Offer_TravelDealsURL\r\n * method: Offer_TravelDeals_TYPE\r\n * raw_url: Offer_TravelDeals_RAW_URL\r\n */\r\nexport const Offer_TravelDeals = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/offer/travel-deals'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Offer_TravelDeals_RAW_URL = function() {\r\n return '/api/offer/travel-deals'\r\n}\r\nexport const Offer_TravelDeals_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Offer_TravelDealsURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/offer/travel-deals'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Offer_Promotions\r\n * url: Offer_PromotionsURL\r\n * method: Offer_Promotions_TYPE\r\n * raw_url: Offer_Promotions_RAW_URL\r\n */\r\nexport const Offer_Promotions = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/offer/promotions'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Offer_Promotions_RAW_URL = function() {\r\n return '/api/offer/promotions'\r\n}\r\nexport const Offer_Promotions_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Offer_PromotionsURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/offer/promotions'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Offer_Promotion\r\n * url: Offer_PromotionURL\r\n * method: Offer_Promotion_TYPE\r\n * raw_url: Offer_Promotion_RAW_URL\r\n * @param name -\r\n */\r\nexport const Offer_Promotion = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/offer/promotion/{name}'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n path = path.replace('{name}', `${parameters['name']}`)\r\n if (parameters['name'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: name'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Offer_Promotion_RAW_URL = function() {\r\n return '/api/offer/promotion/{name}'\r\n}\r\nexport const Offer_Promotion_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Offer_PromotionURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/offer/promotion/{name}'\r\n path = path.replace('{name}', `${parameters['name']}`)\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Offer_Suggest\r\n * url: Offer_SuggestURL\r\n * method: Offer_Suggest_TYPE\r\n * raw_url: Offer_Suggest_RAW_URL\r\n * @param tag -\r\n */\r\nexport const Offer_Suggest = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/offer/suggest/{tag}'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n path = path.replace('{tag}', `${parameters['tag']}`)\r\n if (parameters['tag'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: tag'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Offer_Suggest_RAW_URL = function() {\r\n return '/api/offer/suggest/{tag}'\r\n}\r\nexport const Offer_Suggest_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Offer_SuggestURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/offer/suggest/{tag}'\r\n path = path.replace('{tag}', `${parameters['tag']}`)\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Offer_GetAvailableThemes\r\n * url: Offer_GetAvailableThemesURL\r\n * method: Offer_GetAvailableThemes_TYPE\r\n * raw_url: Offer_GetAvailableThemes_RAW_URL\r\n */\r\nexport const Offer_GetAvailableThemes = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/offer/available-themes'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Offer_GetAvailableThemes_RAW_URL = function() {\r\n return '/api/offer/available-themes'\r\n}\r\nexport const Offer_GetAvailableThemes_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Offer_GetAvailableThemesURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/offer/available-themes'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Offer_GetAvailableCountries\r\n * url: Offer_GetAvailableCountriesURL\r\n * method: Offer_GetAvailableCountries_TYPE\r\n * raw_url: Offer_GetAvailableCountries_RAW_URL\r\n */\r\nexport const Offer_GetAvailableCountries = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/offer/available-countries'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Offer_GetAvailableCountries_RAW_URL = function() {\r\n return '/api/offer/available-countries'\r\n}\r\nexport const Offer_GetAvailableCountries_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Offer_GetAvailableCountriesURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/offer/available-countries'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Offer_ListOffers\r\n * url: Offer_ListOffersURL\r\n * method: Offer_ListOffers_TYPE\r\n * raw_url: Offer_ListOffers_RAW_URL\r\n * @param page -\r\n * @param pageSize -\r\n * @param depth -\r\n */\r\nexport const Offer_ListOffers = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/offer/list/{page}/{pageSize}'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n path = path.replace('{page}', `${parameters['page']}`)\r\n if (parameters['page'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: page'))\r\n }\r\n path = path.replace('{pageSize}', `${parameters['pageSize']}`)\r\n if (parameters['pageSize'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: pageSize'))\r\n }\r\n if (parameters['depth'] !== undefined) {\r\n queryParameters['depth'] = parameters['depth']\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Offer_ListOffers_RAW_URL = function() {\r\n return '/api/offer/list/{page}/{pageSize}'\r\n}\r\nexport const Offer_ListOffers_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Offer_ListOffersURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/offer/list/{page}/{pageSize}'\r\n path = path.replace('{page}', `${parameters['page']}`)\r\n path = path.replace('{pageSize}', `${parameters['pageSize']}`)\r\n if (parameters['depth'] !== undefined) {\r\n queryParameters['depth'] = parameters['depth']\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Offer_OfferGroup\r\n * url: Offer_OfferGroupURL\r\n * method: Offer_OfferGroup_TYPE\r\n * raw_url: Offer_OfferGroup_RAW_URL\r\n * @param name -\r\n * @param value -\r\n */\r\nexport const Offer_OfferGroup = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/offer/group/{name}/{value}'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n path = path.replace('{name}', `${parameters['name']}`)\r\n if (parameters['name'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: name'))\r\n }\r\n path = path.replace('{value}', `${parameters['value']}`)\r\n if (parameters['value'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: value'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Offer_OfferGroup_RAW_URL = function() {\r\n return '/api/offer/group/{name}/{value}'\r\n}\r\nexport const Offer_OfferGroup_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Offer_OfferGroupURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/offer/group/{name}/{value}'\r\n path = path.replace('{name}', `${parameters['name']}`)\r\n path = path.replace('{value}', `${parameters['value']}`)\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Offer_OfferGroups\r\n * url: Offer_OfferGroupsURL\r\n * method: Offer_OfferGroups_TYPE\r\n * raw_url: Offer_OfferGroups_RAW_URL\r\n * @param groups -\r\n */\r\nexport const Offer_OfferGroups = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/offer/groups'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['groups'] !== undefined) {\r\n body = parameters['groups']\r\n }\r\n if (parameters['groups'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: groups'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('post', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Offer_OfferGroups_RAW_URL = function() {\r\n return '/api/offer/groups'\r\n}\r\nexport const Offer_OfferGroups_TYPE = function() {\r\n return 'post'\r\n}\r\nexport const Offer_OfferGroupsURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/offer/groups'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_Retrive\r\n * url: Order_RetriveURL\r\n * method: Order_Retrive_TYPE\r\n * raw_url: Order_Retrive_RAW_URL\r\n * @param id -\r\n * @param key -\r\n */\r\nexport const Order_Retrive = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/{id}/{key}'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n if (parameters['id'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: id'))\r\n }\r\n path = path.replace('{key}', `${parameters['key']}`)\r\n if (parameters['key'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: key'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_Retrive_RAW_URL = function() {\r\n return '/api/order/{id}/{key}'\r\n}\r\nexport const Order_Retrive_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Order_RetriveURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/{id}/{key}'\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n path = path.replace('{key}', `${parameters['key']}`)\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_MetaData\r\n * url: Order_MetaDataURL\r\n * method: Order_MetaData_TYPE\r\n * raw_url: Order_MetaData_RAW_URL\r\n * @param id -\r\n * @param key -\r\n */\r\nexport const Order_MetaData = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/meta/{id}/{key}'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n if (parameters['id'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: id'))\r\n }\r\n path = path.replace('{key}', `${parameters['key']}`)\r\n if (parameters['key'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: key'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_MetaData_RAW_URL = function() {\r\n return '/api/order/meta/{id}/{key}'\r\n}\r\nexport const Order_MetaData_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Order_MetaDataURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/meta/{id}/{key}'\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n path = path.replace('{key}', `${parameters['key']}`)\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_SelectedPayment\r\n * url: Order_SelectedPaymentURL\r\n * method: Order_SelectedPayment_TYPE\r\n * raw_url: Order_SelectedPayment_RAW_URL\r\n * @param id -\r\n * @param key -\r\n */\r\nexport const Order_SelectedPayment = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/payment/{id}/{key}'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n if (parameters['id'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: id'))\r\n }\r\n path = path.replace('{key}', `${parameters['key']}`)\r\n if (parameters['key'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: key'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_SelectedPayment_RAW_URL = function() {\r\n return '/api/order/payment/{id}/{key}'\r\n}\r\nexport const Order_SelectedPayment_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Order_SelectedPaymentURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/payment/{id}/{key}'\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n path = path.replace('{key}', `${parameters['key']}`)\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_Validate\r\n * url: Order_ValidateURL\r\n * method: Order_Validate_TYPE\r\n * raw_url: Order_Validate_RAW_URL\r\n * @param id -\r\n * @param key -\r\n */\r\nexport const Order_Validate = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/validate/{id}/{key}'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n if (parameters['id'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: id'))\r\n }\r\n path = path.replace('{key}', `${parameters['key']}`)\r\n if (parameters['key'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: key'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_Validate_RAW_URL = function() {\r\n return '/api/order/validate/{id}/{key}'\r\n}\r\nexport const Order_Validate_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Order_ValidateURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/validate/{id}/{key}'\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n path = path.replace('{key}', `${parameters['key']}`)\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_PrepareForCheckout\r\n * url: Order_PrepareForCheckoutURL\r\n * method: Order_PrepareForCheckout_TYPE\r\n * raw_url: Order_PrepareForCheckout_RAW_URL\r\n * @param id -\r\n * @param key -\r\n */\r\nexport const Order_PrepareForCheckout = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/prepare/{id}/{key}'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n if (parameters['id'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: id'))\r\n }\r\n path = path.replace('{key}', `${parameters['key']}`)\r\n if (parameters['key'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: key'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_PrepareForCheckout_RAW_URL = function() {\r\n return '/api/order/prepare/{id}/{key}'\r\n}\r\nexport const Order_PrepareForCheckout_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Order_PrepareForCheckoutURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/prepare/{id}/{key}'\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n path = path.replace('{key}', `${parameters['key']}`)\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_OrderNotifications\r\n * url: Order_OrderNotificationsURL\r\n * method: Order_OrderNotifications_TYPE\r\n * raw_url: Order_OrderNotifications_RAW_URL\r\n * @param id -\r\n * @param key -\r\n */\r\nexport const Order_OrderNotifications = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/notifications/{id}/{key}'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n if (parameters['id'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: id'))\r\n }\r\n path = path.replace('{key}', `${parameters['key']}`)\r\n if (parameters['key'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: key'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_OrderNotifications_RAW_URL = function() {\r\n return '/api/order/notifications/{id}/{key}'\r\n}\r\nexport const Order_OrderNotifications_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Order_OrderNotificationsURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/notifications/{id}/{key}'\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n path = path.replace('{key}', `${parameters['key']}`)\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_AvailableInsuranceUpgrades\r\n * url: Order_AvailableInsuranceUpgradesURL\r\n * method: Order_AvailableInsuranceUpgrades_TYPE\r\n * raw_url: Order_AvailableInsuranceUpgrades_RAW_URL\r\n * @param id -\r\n * @param key -\r\n */\r\nexport const Order_AvailableInsuranceUpgrades = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/{id}/{key}/insurance-upgrades'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n if (parameters['id'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: id'))\r\n }\r\n path = path.replace('{key}', `${parameters['key']}`)\r\n if (parameters['key'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: key'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_AvailableInsuranceUpgrades_RAW_URL = function() {\r\n return '/api/order/{id}/{key}/insurance-upgrades'\r\n}\r\nexport const Order_AvailableInsuranceUpgrades_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Order_AvailableInsuranceUpgradesURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/{id}/{key}/insurance-upgrades'\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n path = path.replace('{key}', `${parameters['key']}`)\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_Create\r\n * url: Order_CreateURL\r\n * method: Order_Create_TYPE\r\n * raw_url: Order_Create_RAW_URL\r\n * @param cmd -\r\n */\r\nexport const Order_Create = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['cmd'] !== undefined) {\r\n body = parameters['cmd']\r\n }\r\n if (parameters['cmd'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: cmd'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('post', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_Create_RAW_URL = function() {\r\n return '/api/order'\r\n}\r\nexport const Order_Create_TYPE = function() {\r\n return 'post'\r\n}\r\nexport const Order_CreateURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_AddArticle\r\n * url: Order_AddArticleURL\r\n * method: Order_AddArticle_TYPE\r\n * raw_url: Order_AddArticle_RAW_URL\r\n * @param cmd -\r\n */\r\nexport const Order_AddArticle = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/items'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['cmd'] !== undefined) {\r\n body = parameters['cmd']\r\n }\r\n if (parameters['cmd'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: cmd'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('post', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_AddArticle_RAW_URL = function() {\r\n return '/api/order/items'\r\n}\r\nexport const Order_AddArticle_TYPE = function() {\r\n return 'post'\r\n}\r\nexport const Order_AddArticleURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/items'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_ChangeArticle\r\n * url: Order_ChangeArticleURL\r\n * method: Order_ChangeArticle_TYPE\r\n * raw_url: Order_ChangeArticle_RAW_URL\r\n * @param cmd -\r\n */\r\nexport const Order_ChangeArticle = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/items'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['cmd'] !== undefined) {\r\n body = parameters['cmd']\r\n }\r\n if (parameters['cmd'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: cmd'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('put', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_ChangeArticle_RAW_URL = function() {\r\n return '/api/order/items'\r\n}\r\nexport const Order_ChangeArticle_TYPE = function() {\r\n return 'put'\r\n}\r\nexport const Order_ChangeArticleURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/items'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_RemoveArticle\r\n * url: Order_RemoveArticleURL\r\n * method: Order_RemoveArticle_TYPE\r\n * raw_url: Order_RemoveArticle_RAW_URL\r\n * @param cmd -\r\n */\r\nexport const Order_RemoveArticle = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/items'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['cmd'] !== undefined) {\r\n body = parameters['cmd']\r\n }\r\n if (parameters['cmd'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: cmd'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('delete', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_RemoveArticle_RAW_URL = function() {\r\n return '/api/order/items'\r\n}\r\nexport const Order_RemoveArticle_TYPE = function() {\r\n return 'delete'\r\n}\r\nexport const Order_RemoveArticleURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/items'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_AddGiftCard\r\n * url: Order_AddGiftCardURL\r\n * method: Order_AddGiftCard_TYPE\r\n * raw_url: Order_AddGiftCard_RAW_URL\r\n * @param cmd -\r\n */\r\nexport const Order_AddGiftCard = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/giftcard'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['cmd'] !== undefined) {\r\n body = parameters['cmd']\r\n }\r\n if (parameters['cmd'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: cmd'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('post', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_AddGiftCard_RAW_URL = function() {\r\n return '/api/order/giftcard'\r\n}\r\nexport const Order_AddGiftCard_TYPE = function() {\r\n return 'post'\r\n}\r\nexport const Order_AddGiftCardURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/giftcard'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_RemoveGiftCard\r\n * url: Order_RemoveGiftCardURL\r\n * method: Order_RemoveGiftCard_TYPE\r\n * raw_url: Order_RemoveGiftCard_RAW_URL\r\n * @param cmd -\r\n */\r\nexport const Order_RemoveGiftCard = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/giftcard'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['cmd'] !== undefined) {\r\n body = parameters['cmd']\r\n }\r\n if (parameters['cmd'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: cmd'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('delete', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_RemoveGiftCard_RAW_URL = function() {\r\n return '/api/order/giftcard'\r\n}\r\nexport const Order_RemoveGiftCard_TYPE = function() {\r\n return 'delete'\r\n}\r\nexport const Order_RemoveGiftCardURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/giftcard'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_SetOrderToWireTransfer\r\n * url: Order_SetOrderToWireTransferURL\r\n * method: Order_SetOrderToWireTransfer_TYPE\r\n * raw_url: Order_SetOrderToWireTransfer_RAW_URL\r\n * @param cmd -\r\n */\r\nexport const Order_SetOrderToWireTransfer = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/set-wiretransfer'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['cmd'] !== undefined) {\r\n body = parameters['cmd']\r\n }\r\n if (parameters['cmd'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: cmd'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('put', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_SetOrderToWireTransfer_RAW_URL = function() {\r\n return '/api/order/set-wiretransfer'\r\n}\r\nexport const Order_SetOrderToWireTransfer_TYPE = function() {\r\n return 'put'\r\n}\r\nexport const Order_SetOrderToWireTransferURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/set-wiretransfer'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_UpdateCustomer\r\n * url: Order_UpdateCustomerURL\r\n * method: Order_UpdateCustomer_TYPE\r\n * raw_url: Order_UpdateCustomer_RAW_URL\r\n * @param cmd -\r\n */\r\nexport const Order_UpdateCustomer = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/customer'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['cmd'] !== undefined) {\r\n body = parameters['cmd']\r\n }\r\n if (parameters['cmd'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: cmd'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('put', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_UpdateCustomer_RAW_URL = function() {\r\n return '/api/order/customer'\r\n}\r\nexport const Order_UpdateCustomer_TYPE = function() {\r\n return 'put'\r\n}\r\nexport const Order_UpdateCustomerURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/customer'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_AddReduction\r\n * url: Order_AddReductionURL\r\n * method: Order_AddReduction_TYPE\r\n * raw_url: Order_AddReduction_RAW_URL\r\n * @param cmd -\r\n */\r\nexport const Order_AddReduction = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/reduction'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['cmd'] !== undefined) {\r\n body = parameters['cmd']\r\n }\r\n if (parameters['cmd'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: cmd'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('post', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_AddReduction_RAW_URL = function() {\r\n return '/api/order/reduction'\r\n}\r\nexport const Order_AddReduction_TYPE = function() {\r\n return 'post'\r\n}\r\nexport const Order_AddReductionURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/reduction'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_RemoveReduction\r\n * url: Order_RemoveReductionURL\r\n * method: Order_RemoveReduction_TYPE\r\n * raw_url: Order_RemoveReduction_RAW_URL\r\n * @param cmd -\r\n */\r\nexport const Order_RemoveReduction = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/reduction'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['cmd'] !== undefined) {\r\n body = parameters['cmd']\r\n }\r\n if (parameters['cmd'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: cmd'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('delete', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_RemoveReduction_RAW_URL = function() {\r\n return '/api/order/reduction'\r\n}\r\nexport const Order_RemoveReduction_TYPE = function() {\r\n return 'delete'\r\n}\r\nexport const Order_RemoveReductionURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/reduction'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_PayPalCreateOrder\r\n * url: Order_PayPalCreateOrderURL\r\n * method: Order_PayPalCreateOrder_TYPE\r\n * raw_url: Order_PayPalCreateOrder_RAW_URL\r\n * @param cmd -\r\n */\r\nexport const Order_PayPalCreateOrder = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/paypal-create'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['cmd'] !== undefined) {\r\n body = parameters['cmd']\r\n }\r\n if (parameters['cmd'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: cmd'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('post', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_PayPalCreateOrder_RAW_URL = function() {\r\n return '/api/order/paypal-create'\r\n}\r\nexport const Order_PayPalCreateOrder_TYPE = function() {\r\n return 'post'\r\n}\r\nexport const Order_PayPalCreateOrderURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/paypal-create'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_PayPalTransactionComplete\r\n * url: Order_PayPalTransactionCompleteURL\r\n * method: Order_PayPalTransactionComplete_TYPE\r\n * raw_url: Order_PayPalTransactionComplete_RAW_URL\r\n * @param cmd -\r\n */\r\nexport const Order_PayPalTransactionComplete = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/paypal-transaction'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['cmd'] !== undefined) {\r\n body = parameters['cmd']\r\n }\r\n if (parameters['cmd'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: cmd'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('post', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_PayPalTransactionComplete_RAW_URL = function() {\r\n return '/api/order/paypal-transaction'\r\n}\r\nexport const Order_PayPalTransactionComplete_TYPE = function() {\r\n return 'post'\r\n}\r\nexport const Order_PayPalTransactionCompleteURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/paypal-transaction'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_CloseOrder\r\n * url: Order_CloseOrderURL\r\n * method: Order_CloseOrder_TYPE\r\n * raw_url: Order_CloseOrder_RAW_URL\r\n * @param cmd -\r\n */\r\nexport const Order_CloseOrder = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/close'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['cmd'] !== undefined) {\r\n body = parameters['cmd']\r\n }\r\n if (parameters['cmd'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: cmd'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('put', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_CloseOrder_RAW_URL = function() {\r\n return '/api/order/close'\r\n}\r\nexport const Order_CloseOrder_TYPE = function() {\r\n return 'put'\r\n}\r\nexport const Order_CloseOrderURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/close'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_OptinOptions\r\n * url: Order_OptinOptionsURL\r\n * method: Order_OptinOptions_TYPE\r\n * raw_url: Order_OptinOptions_RAW_URL\r\n * @param cmd -\r\n */\r\nexport const Order_OptinOptions = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/optin'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['cmd'] !== undefined) {\r\n body = parameters['cmd']\r\n }\r\n if (parameters['cmd'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: cmd'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('put', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_OptinOptions_RAW_URL = function() {\r\n return '/api/order/optin'\r\n}\r\nexport const Order_OptinOptions_TYPE = function() {\r\n return 'put'\r\n}\r\nexport const Order_OptinOptionsURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/optin'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_Reduction\r\n * url: Order_ReductionURL\r\n * method: Order_Reduction_TYPE\r\n * raw_url: Order_Reduction_RAW_URL\r\n * @param id -\r\n */\r\nexport const Order_Reduction = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/reduction/{id}'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n if (parameters['id'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: id'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_Reduction_RAW_URL = function() {\r\n return '/api/order/reduction/{id}'\r\n}\r\nexport const Order_Reduction_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Order_ReductionURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/reduction/{id}'\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_ClaimOrder\r\n * url: Order_ClaimOrderURL\r\n * method: Order_ClaimOrder_TYPE\r\n * raw_url: Order_ClaimOrder_RAW_URL\r\n * @param req -\r\n */\r\nexport const Order_ClaimOrder = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/claim'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['req'] !== undefined) {\r\n body = parameters['req']\r\n }\r\n if (parameters['req'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: req'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('put', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_ClaimOrder_RAW_URL = function() {\r\n return '/api/order/claim'\r\n}\r\nexport const Order_ClaimOrder_TYPE = function() {\r\n return 'put'\r\n}\r\nexport const Order_ClaimOrderURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/claim'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_ClosedOrdersForUser\r\n * url: Order_ClosedOrdersForUserURL\r\n * method: Order_ClosedOrdersForUser_TYPE\r\n * raw_url: Order_ClosedOrdersForUser_RAW_URL\r\n * @param page -\r\n */\r\nexport const Order_ClosedOrdersForUser = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/account-overview/{page}'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n path = path.replace('{page}', `${parameters['page']}`)\r\n if (parameters['page'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: page'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_ClosedOrdersForUser_RAW_URL = function() {\r\n return '/api/order/account-overview/{page}'\r\n}\r\nexport const Order_ClosedOrdersForUser_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Order_ClosedOrdersForUserURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/account-overview/{page}'\r\n path = path.replace('{page}', `${parameters['page']}`)\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_AmazonPayCreateCheckoutSession\r\n * url: Order_AmazonPayCreateCheckoutSessionURL\r\n * method: Order_AmazonPayCreateCheckoutSession_TYPE\r\n * raw_url: Order_AmazonPayCreateCheckoutSession_RAW_URL\r\n * @param cmd -\r\n */\r\nexport const Order_AmazonPayCreateCheckoutSession = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/amazonpay-create'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['cmd'] !== undefined) {\r\n body = parameters['cmd']\r\n }\r\n if (parameters['cmd'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: cmd'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('post', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_AmazonPayCreateCheckoutSession_RAW_URL = function() {\r\n return '/api/order/amazonpay-create'\r\n}\r\nexport const Order_AmazonPayCreateCheckoutSession_TYPE = function() {\r\n return 'post'\r\n}\r\nexport const Order_AmazonPayCreateCheckoutSessionURL = function(\r\n parameters = {},\r\n) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/amazonpay-create'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_AmazonPayProcessCheckoutSession\r\n * url: Order_AmazonPayProcessCheckoutSessionURL\r\n * method: Order_AmazonPayProcessCheckoutSession_TYPE\r\n * raw_url: Order_AmazonPayProcessCheckoutSession_RAW_URL\r\n * @param cmd -\r\n */\r\nexport const Order_AmazonPayProcessCheckoutSession = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/amazonpay-authorized'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['cmd'] !== undefined) {\r\n body = parameters['cmd']\r\n }\r\n if (parameters['cmd'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: cmd'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('post', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_AmazonPayProcessCheckoutSession_RAW_URL = function() {\r\n return '/api/order/amazonpay-authorized'\r\n}\r\nexport const Order_AmazonPayProcessCheckoutSession_TYPE = function() {\r\n return 'post'\r\n}\r\nexport const Order_AmazonPayProcessCheckoutSessionURL = function(\r\n parameters = {},\r\n) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/amazonpay-authorized'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_AmazonPayCreateRedirect\r\n * url: Order_AmazonPayCreateRedirectURL\r\n * method: Order_AmazonPayCreateRedirect_TYPE\r\n * raw_url: Order_AmazonPayCreateRedirect_RAW_URL\r\n * @param cmd -\r\n */\r\nexport const Order_AmazonPayCreateRedirect = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/amazonpay-createredirect'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['cmd'] !== undefined) {\r\n body = parameters['cmd']\r\n }\r\n if (parameters['cmd'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: cmd'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('post', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_AmazonPayCreateRedirect_RAW_URL = function() {\r\n return '/api/order/amazonpay-createredirect'\r\n}\r\nexport const Order_AmazonPayCreateRedirect_TYPE = function() {\r\n return 'post'\r\n}\r\nexport const Order_AmazonPayCreateRedirectURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/amazonpay-createredirect'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Order_AmazonPayCompletePayment\r\n * url: Order_AmazonPayCompletePaymentURL\r\n * method: Order_AmazonPayCompletePayment_TYPE\r\n * raw_url: Order_AmazonPayCompletePayment_RAW_URL\r\n * @param cmd -\r\n */\r\nexport const Order_AmazonPayCompletePayment = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/amazonpay-complete'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['cmd'] !== undefined) {\r\n body = parameters['cmd']\r\n }\r\n if (parameters['cmd'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: cmd'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('post', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Order_AmazonPayCompletePayment_RAW_URL = function() {\r\n return '/api/order/amazonpay-complete'\r\n}\r\nexport const Order_AmazonPayCompletePayment_TYPE = function() {\r\n return 'post'\r\n}\r\nexport const Order_AmazonPayCompletePaymentURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/amazonpay-complete'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Voucher_RetriveVoucherCustomer\r\n * url: Voucher_RetriveVoucherCustomerURL\r\n * method: Voucher_RetriveVoucherCustomer_TYPE\r\n * raw_url: Voucher_RetriveVoucherCustomer_RAW_URL\r\n * @param id -\r\n * @param key -\r\n * @param idVoucher -\r\n */\r\nexport const Voucher_RetriveVoucherCustomer = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/voucher/{id}/{key}/{idVoucher}'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n if (parameters['id'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: id'))\r\n }\r\n path = path.replace('{key}', `${parameters['key']}`)\r\n if (parameters['key'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: key'))\r\n }\r\n path = path.replace('{idVoucher}', `${parameters['idVoucher']}`)\r\n if (parameters['idVoucher'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: idVoucher'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Voucher_RetriveVoucherCustomer_RAW_URL = function() {\r\n return '/api/voucher/{id}/{key}/{idVoucher}'\r\n}\r\nexport const Voucher_RetriveVoucherCustomer_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Voucher_RetriveVoucherCustomerURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/voucher/{id}/{key}/{idVoucher}'\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n path = path.replace('{key}', `${parameters['key']}`)\r\n path = path.replace('{idVoucher}', `${parameters['idVoucher']}`)\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Voucher_UpdateVoucherCustomer\r\n * url: Voucher_UpdateVoucherCustomerURL\r\n * method: Voucher_UpdateVoucherCustomer_TYPE\r\n * raw_url: Voucher_UpdateVoucherCustomer_RAW_URL\r\n * @param id -\r\n * @param key -\r\n * @param idVoucher -\r\n * @param customer -\r\n */\r\nexport const Voucher_UpdateVoucherCustomer = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/voucher/{id}/{key}/{idVoucher}'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n if (parameters['id'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: id'))\r\n }\r\n path = path.replace('{key}', `${parameters['key']}`)\r\n if (parameters['key'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: key'))\r\n }\r\n path = path.replace('{idVoucher}', `${parameters['idVoucher']}`)\r\n if (parameters['idVoucher'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: idVoucher'))\r\n }\r\n if (parameters['customer'] !== undefined) {\r\n body = parameters['customer']\r\n }\r\n if (parameters['customer'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: customer'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('put', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Voucher_UpdateVoucherCustomer_RAW_URL = function() {\r\n return '/api/voucher/{id}/{key}/{idVoucher}'\r\n}\r\nexport const Voucher_UpdateVoucherCustomer_TYPE = function() {\r\n return 'put'\r\n}\r\nexport const Voucher_UpdateVoucherCustomerURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/voucher/{id}/{key}/{idVoucher}'\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n path = path.replace('{key}', `${parameters['key']}`)\r\n path = path.replace('{idVoucher}', `${parameters['idVoucher']}`)\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: Voucher_DownloadVoucher\r\n * url: Voucher_DownloadVoucherURL\r\n * method: Voucher_DownloadVoucher_TYPE\r\n * raw_url: Voucher_DownloadVoucher_RAW_URL\r\n * @param id -\r\n * @param key -\r\n * @param idVoucher -\r\n */\r\nexport const Voucher_DownloadVoucher = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/voucher/download/{id}/{key}/{idVoucher}.pdf'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n if (parameters['id'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: id'))\r\n }\r\n path = path.replace('{key}', `${parameters['key']}`)\r\n if (parameters['key'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: key'))\r\n }\r\n path = path.replace('{idVoucher}', `${parameters['idVoucher']}`)\r\n if (parameters['idVoucher'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: idVoucher'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const Voucher_DownloadVoucher_RAW_URL = function() {\r\n return '/api/voucher/download/{id}/{key}/{idVoucher}.pdf'\r\n}\r\nexport const Voucher_DownloadVoucher_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Voucher_DownloadVoucherURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/voucher/download/{id}/{key}/{idVoucher}.pdf'\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n path = path.replace('{key}', `${parameters['key']}`)\r\n path = path.replace('{idVoucher}', `${parameters['idVoucher']}`)\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n/**\r\n *\r\n * request: WebHooks_PayPal\r\n * url: WebHooks_PayPalURL\r\n * method: WebHooks_PayPal_TYPE\r\n * raw_url: WebHooks_PayPal_RAW_URL\r\n * @param hook -\r\n */\r\nexport const WebHooks_PayPal = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/webhooks/paypal'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n if (parameters['hook'] !== undefined) {\r\n body = parameters['hook']\r\n }\r\n if (parameters['hook'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: hook'))\r\n }\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n return request('post', domain + path, body, queryParameters, form, config)\r\n}\r\nexport const WebHooks_PayPal_RAW_URL = function() {\r\n return '/api/webhooks/paypal'\r\n}\r\nexport const WebHooks_PayPal_TYPE = function() {\r\n return 'post'\r\n}\r\nexport const WebHooks_PayPalURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/webhooks/paypal'\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n\r\n/**\r\n *\r\n * request: Order_AffiliateSummary\r\n * url: Order_AffiliateSummaryURL\r\n * method: Order_AffiliateSummary_TYPE\r\n * raw_url: Order_AffiliateSummary_RAW_URL\r\n * @param id -\r\n * @param key -\r\n */\r\nexport const Order_AffiliateSummary = function(parameters = {}) {\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n const config = parameters.$config\r\n let path = '/api/order/summary/{id}/{key}'\r\n let body\r\n let queryParameters = {}\r\n let form = {}\r\n\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n\r\n if (parameters['id'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: id'))\r\n }\r\n\r\n path = path.replace('{key}', `${parameters['key']}`)\r\n\r\n if (parameters['key'] === undefined) {\r\n return Promise.reject(new Error('Missing required parameter: key'))\r\n }\r\n\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n\r\n return request('get', domain + path, body, queryParameters, form, config)\r\n}\r\n\r\nexport const Order_AffiliateSummary_RAW_URL = function() {\r\n return '/api/order/summary/{id}/{key}'\r\n}\r\nexport const Order_AffiliateSummary_TYPE = function() {\r\n return 'get'\r\n}\r\nexport const Order_AffiliateSummaryURL = function(parameters = {}) {\r\n let queryParameters = {}\r\n const domain = parameters.$domain ? parameters.$domain : getDomain()\r\n let path = '/api/order/summary/{id}/{key}'\r\n path = path.replace('{id}', `${parameters['id']}`)\r\n path = path.replace('{key}', `${parameters['key']}`)\r\n\r\n if (parameters.$queryParameters) {\r\n Object.keys(parameters.$queryParameters).forEach(function(parameterName) {\r\n queryParameters[parameterName] =\r\n parameters.$queryParameters[parameterName]\r\n })\r\n }\r\n\r\n let keys = Object.keys(queryParameters)\r\n return (\r\n domain +\r\n path +\r\n (keys.length > 0\r\n ? '?' +\r\n keys\r\n .map(key => key + '=' + encodeURIComponent(queryParameters[key]))\r\n .join('&')\r\n : '')\r\n )\r\n}\r\n","import axios from 'axios'\nimport { Offer_Promotions } from './backend'\n\nconst getOverview = async (site) => {\n const resp = await axios({ \n method: 'get', \n url: `https://assets.urlaubsgutschein.kaufen/whitelabel/${site}/a.json`,\n responseType: 'json'})\n return resp.data;\n}\n\nconst getCurrentPromotions = async () => {\n let { data } = await Offer_Promotions();\n return data;\n}\n\nexport default {\n getOverview,\n getCurrentPromotions\n}","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainSearch.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainSearch.vue?vue&type=style&index=0&lang=scss&\""],"sourceRoot":""}