{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/helpers/to-base-64.ts","webpack:///./src/stories/Components/Content/IntroductionContent/IntroductionContent.tsx","webpack:///./src/stories/Components/Checkout/OrderProgressBar/OrderProgressBar.styles.ts","webpack:///./src/stories/Components/Checkout/OrderProgressBar/OrderProgressBar.tsx","webpack:///./src/stories/Components/Media/Image/Image.styles.ts","webpack:///./src/core/ecommerce/services/EcommerceService.ts","webpack:///./src/helpers/cloudinary.ts","webpack:///./src/stories/Components/Media/Image/Image.tsx","webpack:///./src/stories/Widgets/Checkout/OrderOverview/OrderOverview.styles.ts","webpack:///./src/stories/Widgets/Checkout/OrderOverview/OrderOverview.widget.tsx","webpack:///./src/img/icons/select-arrow-up.svg"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","58","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","this","oldJsonpFunction","slice","toBase64","str","window","Buffer","from","toString","btoa","IntroductionContent","props","React","createElement","S","Wrapper","centerText","title","Title","text","Paragraph","size","align","rgbaGrey55","rgba","brand","grey","grey55","KeyframeFillComplete","keyframes","primary","base","white","Bar","styled","SiteWide","Device","Tablet","Step","a","currentProgress","OrderStepProgress","Inactive","css","Number","Text","Complete","Current","div","fonts","DaxPro","animateProgressFill","OrderProgressBarStyles","OrderProgressBar","items","map","x","index","id","as","stepProgress","href","url","Image","img","objectFit","undefined","objectPosition","DesktopSmall","Intrinsic","Responsive","width","height","fullPaddingTop","quotient","isNaN","ImageStyles","Fixed","Fill","EcommerceService","params","ApiService","request","baseUrl","UrlResolver","getDomain","controller","method","slug","response","orderNumber","safeRequest","date","format","cl","Cloudinary","cloud","cloudName","secure","imageUrl","publicId","rawTransformation","transformation","image","addTransformation","FormatRegEx","test","toURL","delivery","fAuto","quality","qAuto","useState","hasErrored","setHasErrored","deviceWidths","MobileSmall","MobileMedium","Mobile","MobileLarge","TabletLarge","Desktop","ActualDesktop","filter","sort","b","srcSetUrls","src","join","sizes","handleError","e","currentTarget","fallbackSrc","components","layout","role","alt","decoding","preload","loading","draggable","srcSet","onError","fetchPriority","sizerSvg","Fragment","OrderOverviewStyles","List","HireCardStyles","Card","ButtonWrapper","withWidget","withRedux","basket","useSelector","app","order","orderLines","translations","steps","StyledSection","HireCard","productId","hire","quantity","allowDelete","variant","productName","productGroupName","productImageUrl","price","ratePrice","priceFormatted","ratePriceFormatted","startDate","Date","hireDateStart","endDate","hireDateEnd","hireViewType","HireViewType","Editable","dayHirePeriodText","priceSuffix","quantityLabel","startDateLabel","endDateLabel","productQuestion","lineQuestions","excludedDates","LinkButton","branding","buttonText","checkoutDetailsUrl","hydrate","HydrateOption","InView"],"mappings":"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","file":"OrderOverview-baaebeb4a4ead74481e2.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\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\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\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\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\t58: 0\n \t};\n\n \tvar deferredModules = [];\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\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 = \"/sitefiles/next-gen/dist/\";\n\n \tvar jsonpArray = this[\"nextGenJsonpFunction\"] = this[\"nextGenJsonpFunction\"] || [];\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 \t// add entry module to deferred list\n \tdeferredModules.push([594,0,1,2,5,8,11,84,3,6,9,23,30]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","/**\r\n * Isomorphic base64 that works on the server and client\r\n */\r\nexport function toBase64(str) {\r\n if (typeof window === 'undefined') {\r\n return Buffer.from(str).toString('base64');\r\n }\r\n else {\r\n return window.btoa(str);\r\n }\r\n}\r\n","import Paragraph from '@stories/Components/Global/Typography/Paragraph';\r\nimport React from 'react';\r\nimport S from '@stories/Components/Content/IntroductionContent/IntroductionContent.styles';\r\nconst IntroductionContent = (props) => {\r\n return (React.createElement(S.Wrapper, { centerText: props.centerText },\r\n props.title && React.createElement(S.Title, null, props.title),\r\n props.text && (React.createElement(Paragraph, { size: \"large\", align: \"center\" }, props.text))));\r\n};\r\nexport default IntroductionContent;\r\n","import { OrderStepProgress } from '@core/enums';\r\nimport brand from '@helpers/brand';\r\nimport { fonts } from '@helpers/fonts';\r\nimport { rgba } from 'polished';\r\nimport SiteWide from '@stories/Components/Containers/SiteWide/SiteWide';\r\nimport styled, { css, keyframes } from 'styled-components';\r\nimport { Device, from } from '@helpers/media';\r\nconst rgbaGrey55 = rgba(brand.grey.grey55, 0.75);\r\nconst KeyframeFillComplete = keyframes `\r\n 0% {\r\n color: ${brand.primary.base};\r\n background-color: none;\r\n }\r\n 100% {\r\n color: ${brand.white};\r\n background-color: ${brand.primary.base};\r\n }\r\n`;\r\nconst Bar = styled(SiteWide) `\r\n display: flex;\r\n align-items: flex-start;\r\n justify-content: space-evenly;\r\n margin: 18px auto;\r\n\r\n @media ${from(Device.Tablet)} {\r\n margin: 50px auto;\r\n }\r\n`;\r\nconst Step = styled.a `\r\n position: relative;\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n justify-content: center;\r\n flex: 1;\r\n\r\n &:hover,\r\n &:active,\r\n &:focus {\r\n text-decoration: none;\r\n }\r\n\r\n &:after {\r\n content: '';\r\n display: block;\r\n position: absolute;\r\n z-index: 0;\r\n top: 19px;\r\n margin-top: -1px;\r\n left: 50%;\r\n width: 100%;\r\n height: 2px;\r\n border-bottom: 2px solid ${rgbaGrey55};\r\n\r\n @media ${from(Device.Tablet)} {\r\n top: 30px;\r\n }\r\n }\r\n\r\n &:last-child:after {\r\n display: none;\r\n }\r\n\r\n ${({ currentProgress }) => {\r\n switch (currentProgress) {\r\n default:\r\n case OrderStepProgress.Inactive:\r\n return css `\r\n ${() => Number} {\r\n border-color: ${rgbaGrey55};\r\n color: ${rgbaGrey55};\r\n }\r\n ${() => Text} {\r\n color: ${rgbaGrey55};\r\n }\r\n `;\r\n case OrderStepProgress.Complete:\r\n return css `\r\n &:after {\r\n border-color: ${brand.primary.base};\r\n }\r\n\r\n ${() => Number} {\r\n border-color: ${brand.primary.base};\r\n color: ${brand.white};\r\n background-color: ${brand.primary.base};\r\n }\r\n ${() => Text} {\r\n color: ${brand.grey.grey55};\r\n }\r\n `;\r\n case OrderStepProgress.Current:\r\n return css `\r\n ${() => Number} {\r\n border-color: ${brand.primary.base};\r\n color: ${brand.primary.base};\r\n }\r\n ${() => Text} {\r\n color: ${brand.primary.base};\r\n }\r\n `;\r\n }\r\n}}\r\n`;\r\nconst Number = styled.div `\r\n display: inline-flex;\r\n align-items: center;\r\n justify-content: center;\r\n height: 38px;\r\n width: 38px;\r\n font-size: 16px;\r\n line-height: 16px;\r\n ${fonts.DaxPro['Medium']};\r\n background-color: ${brand.white};\r\n border-radius: 50%;\r\n margin-bottom: 12px;\r\n border: 2px solid transparent;\r\n z-index: 2;\r\n\r\n @media ${from(Device.Tablet)} {\r\n font-size: 22px;\r\n line-height: 22px;\r\n height: 60px;\r\n width: 60px;\r\n }\r\n\r\n ${({ animateProgressFill }) => animateProgressFill &&\r\n css `\r\n animation: ${KeyframeFillComplete} 500ms linear forwards 750ms;\r\n `}\r\n`;\r\nconst Text = styled.div `\r\n font-size: 14px;\r\n line-height: 1.2;\r\n ${fonts.DaxPro['Medium']};\r\n text-align: center;\r\n\r\n @media ${from(Device.Tablet)} {\r\n font-size: 16px;\r\n }\r\n`;\r\nexport const OrderProgressBarStyles = {\r\n Bar,\r\n Step,\r\n Number,\r\n Text,\r\n};\r\n","import { OrderStepProgress } from '@core/enums';\r\nimport React from 'react';\r\nimport { OrderProgressBarStyles as S } from './OrderProgressBar.styles';\r\nconst OrderProgressBar = (props) => {\r\n return (React.createElement(S.Bar, null, props.items &&\r\n props.items.map((x, index) => (React.createElement(S.Step, { key: x.id, as: x.stepProgress === OrderStepProgress.Inactive ? 'div' : 'a', currentProgress: x.stepProgress, href: x.stepProgress === OrderStepProgress.Current ||\r\n x.stepProgress === OrderStepProgress.Complete\r\n ? x.url\r\n : '' },\r\n React.createElement(S.Number, { animateProgressFill: index === 3 && x.stepProgress === OrderStepProgress.Current }, index + 1),\r\n React.createElement(S.Text, null, x.text))))));\r\n};\r\nexport default OrderProgressBar;\r\n","import { Device, from } from '@helpers/media';\r\nimport styled from 'styled-components';\r\nconst Image = styled.img `\r\n position: absolute;\r\n height: 100%;\r\n inset: 0px;\r\n box-sizing: border-box;\r\n padding: 0px;\r\n margin-left: auto;\r\n margin-right: auto;\r\n border: none;\r\n display: block;\r\n text-indent: -999px;\r\n object-fit: ${({ objectFit }) => (objectFit !== undefined ? objectFit : 'initial')};\r\n object-position: ${({ objectPosition }) => objectPosition !== undefined ? objectPosition : undefined};\r\n\r\n @media ${from(Device.DesktopSmall)} {\r\n width: 100%;\r\n height: auto;\r\n }\r\n`;\r\nconst Intrinsic = styled.div `\r\n height: 100%;\r\n display: inline-block;\r\n max-width: 100%;\r\n overflow: hidden;\r\n position: relative;\r\n box-sizing: border-box;\r\n margin: 0;\r\n\r\n > div {\r\n box-sizing: border-box;\r\n display: block;\r\n max-width: 100%;\r\n }\r\n`;\r\nconst Responsive = styled.div `\r\n display: block;\r\n overflow: hidden;\r\n position: relative;\r\n box-sizing: border-box;\r\n margin: 0;\r\n\r\n > div {\r\n display: block;\r\n box-sizing: border-box;\r\n \r\n padding-top: ${({ width, height, fullPaddingTop }) => {\r\n if (fullPaddingTop || !height || !width) {\r\n return '100%';\r\n }\r\n const quotient = height / width;\r\n return isNaN(quotient) ? '100%' : `${quotient * 100}%`;\r\n}};\r\n\r\n [data-featured='true'] & {\r\n padding-top: unset;\r\n }\r\n\r\n }\r\n\r\n [data-featured='true'] & {\r\n height: 400px; //set specific height of image style\r\n }\r\n`;\r\nconst Fixed = styled.div `\r\n overflow: hidden;\r\n box-sizing: border-box;\r\n display: inline-block;\r\n position: relative;\r\n width: ${({ width }) => width}px;\r\n height: ${({ height }) => height}px;\r\n`;\r\nconst Fill = styled.div `\r\n display: block;\r\n overflow: hidden;\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n bottom: 0;\r\n right: 0;\r\n box-sizing: border-box;\r\n margin: 0;\r\n`;\r\nexport const ImageStyles = {\r\n Image,\r\n Intrinsic,\r\n Fixed,\r\n Responsive,\r\n Fill,\r\n};\r\n","import ApiService from '@core/api/services/ApiService';\r\nimport UrlResolver from '@core/url-resolver/UrlResolver';\r\nimport format from 'date-fns/format';\r\nclass EcommerceService {\r\n async UpdateBasketItem(params) {\r\n const response = await ApiService.request({\r\n baseUrl: UrlResolver.getDomain(),\r\n controller: 'g42',\r\n method: 'PUT',\r\n slug: 'order/basket-item',\r\n params: { ...params },\r\n });\r\n return response;\r\n }\r\n async DeleteBasketItem(params) {\r\n const response = await ApiService.request({\r\n baseUrl: UrlResolver.getDomain(),\r\n controller: 'g42',\r\n method: 'DELETE',\r\n slug: 'order/remove-item',\r\n params: { ...params },\r\n });\r\n return response;\r\n }\r\n async UpdateOrder(params) {\r\n const response = await ApiService.request({\r\n baseUrl: UrlResolver.getDomain(),\r\n controller: 'g42',\r\n method: 'PUT',\r\n slug: 'order/latest',\r\n params: { ...params },\r\n });\r\n return response;\r\n }\r\n async SubmitOrder(params) {\r\n const response = await ApiService.request({\r\n baseUrl: UrlResolver.getDomain(),\r\n controller: 'g42',\r\n method: 'PUT',\r\n slug: 'order/submit-latest',\r\n params: { ...params },\r\n });\r\n return response;\r\n }\r\n GetDownloadPdfUrl(params) {\r\n return `/api/g42/hires/download-order?orderNumber=${params.orderNumber}`;\r\n }\r\n async extendHire(params) {\r\n const response = await ApiService.request({\r\n baseUrl: UrlResolver.getDomain(),\r\n controller: 'g42',\r\n method: 'PATCH',\r\n slug: 'hires/extend',\r\n params: { ...params },\r\n });\r\n return response;\r\n }\r\n async offHire(params) {\r\n const response = await ApiService.request({\r\n baseUrl: UrlResolver.getDomain(),\r\n controller: 'g42',\r\n method: 'PATCH',\r\n slug: 'hires/offhire',\r\n params: { ...params },\r\n });\r\n return response;\r\n }\r\n async fetchLatestOrder() {\r\n const response = await ApiService.safeRequest({\r\n baseUrl: UrlResolver.getDomain(),\r\n controller: 'g42',\r\n method: 'GET',\r\n slug: 'order/latest',\r\n });\r\n if (response) {\r\n return response.result;\r\n }\r\n return null;\r\n }\r\n getApiFormattedDate(date) {\r\n return format(date, 'yyyy-MM-dd');\r\n }\r\n}\r\nexport default new EcommerceService();\r\n","import { Cloudinary } from '@cloudinary/base';\r\nimport { format, quality } from '@cloudinary/base/actions/delivery';\r\nimport { fit } from '@cloudinary/base/actions/resize';\r\nimport { audioCodec } from '@cloudinary/base/actions/transcode';\r\nimport { auto as fAuto } from '@cloudinary/base/qualifiers/format';\r\nimport { auto as qAuto } from '@cloudinary/base/qualifiers/quality';\r\nconst cl = new Cloudinary({\r\n cloud: {\r\n cloudName: 'vp-groundforce',\r\n },\r\n url: {\r\n secure: true,\r\n },\r\n});\r\nexport function imageUrl(publicId, rawTransformation) {\r\n if (!publicId) {\r\n return '';\r\n }\r\n const image = cl.image(publicId);\r\n // Apply raw transformation.\r\n if (rawTransformation) {\r\n image.addTransformation(rawTransformation);\r\n }\r\n // Ensure we're specifying a format...\r\n if (containsFormatTransformation(rawTransformation)) {\r\n return image.toURL();\r\n }\r\n // ...otherwise serve with \"f_auto\" for WebP support.\r\n return image.delivery(format(fAuto())).delivery(quality(qAuto())).toURL();\r\n}\r\nexport function videoUrl(publicId, options = {}) {\r\n if (!publicId) {\r\n return '';\r\n }\r\n let video = cl.video(publicId);\r\n // Apply resize.\r\n if (options.aspectRatio || options.width) {\r\n let resize = fit();\r\n if (options.aspectRatio) {\r\n resize = resize.aspectRatio(options.aspectRatio);\r\n }\r\n if (options.width) {\r\n resize = resize.width(options.width);\r\n }\r\n video = video.resize(resize);\r\n }\r\n // Apply transcale (remove audio).\r\n if (options.audioCodec) {\r\n video = video.transcode(audioCodec(options.audioCodec));\r\n }\r\n // Apply format.\r\n if (options.format) {\r\n video = video.delivery(format(options.format));\r\n }\r\n return video.toURL();\r\n}\r\n// eslint-disable-next-line no-useless-escape\r\nconst FormatRegEx = /(\\/|\\,)(f_.*?)(\\/|\\,)/;\r\nfunction containsFormatTransformation(transformation) {\r\n return !!transformation && FormatRegEx.test(transformation);\r\n}\r\n","import { imageUrl } from '@helpers/cloudinary';\r\nimport { Device } from '@helpers/media';\r\nimport { toBase64 } from '@helpers/to-base-64';\r\nimport React, { useState } from 'react';\r\nimport { ImageStyles } from './Image.styles';\r\nconst Image = (props) => {\r\n const [hasErrored, setHasErrored] = useState(false);\r\n const deviceWidths = [\r\n props.width ? props.width : -1,\r\n Device.MobileSmall,\r\n Device.MobileSmall * 2,\r\n Device.MobileSmall * 3,\r\n Device.MobileMedium,\r\n Device.MobileMedium * 2,\r\n Device.MobileMedium * 3,\r\n Device.Mobile,\r\n Device.Mobile * 2,\r\n Device.Mobile * 3,\r\n Device.MobileLarge,\r\n Device.MobileLarge * 2,\r\n Device.MobileLarge * 3,\r\n Device.Tablet,\r\n Device.Tablet * 2,\r\n Device.Tablet * 3,\r\n Device.TabletLarge,\r\n Device.TabletLarge * 2,\r\n Device.TabletLarge * 3,\r\n Device.DesktopSmall,\r\n Device.DesktopSmall * 2,\r\n Device.DesktopSmall * 3,\r\n Device.Desktop,\r\n Device.Desktop * 2,\r\n Device.Desktop * 3,\r\n Device.ActualDesktop,\r\n Device.ActualDesktop * 2,\r\n Device.ActualDesktop * 3,\r\n ]\r\n .filter((x) => x > 0)\r\n .sort((a, b) => (a < b ? -1 : 1));\r\n const srcSetUrls = deviceWidths\r\n .map((x) => `${imageUrl(props.src, `c_fill,w_${x}`)} ${x}w`)\r\n .join(', ');\r\n const src = imageUrl(props.src, `c_fill,w_${deviceWidths[deviceWidths.length - 1]}`);\r\n const sizes = props.sizes ? props.sizes : '100vw';\r\n const handleError = (e) => {\r\n if (hasErrored) {\r\n return;\r\n }\r\n setHasErrored(true);\r\n e.currentTarget.src = props.fallbackSrc ? props.fallbackSrc : '';\r\n };\r\n let components = null;\r\n switch (props.layout) {\r\n default:\r\n case 'responsive': {\r\n components = (React.createElement(ImageStyles.Responsive, { width: props.width, height: props.height, fullPaddingTop: props.fullPaddingTop },\r\n React.createElement(\"div\", null),\r\n React.createElement(ImageStyles.Image, { role: props.role, alt: props.alt, decoding: props.preload ? 'sync' : 'async', loading: props.loading ? props.loading : 'lazy', objectFit: props.objectFit, objectPosition: props.objectPosition, draggable: props.draggable, sizes: sizes, srcSet: srcSetUrls, src: src, onError: handleError, \r\n /*// @ts-ignore */\r\n fetchPriority: props.preload ? 'high' : 'auto' })));\r\n break;\r\n }\r\n case 'intrinsic': {\r\n const sizerSvg = ``;\r\n components = (React.createElement(ImageStyles.Intrinsic, null,\r\n React.createElement(\"div\", null,\r\n React.createElement(\"img\", { \"aria-hidden\": true, role: \"presentation\", src: `data:image/svg+xml;base64,${toBase64(sizerSvg)}` })),\r\n React.createElement(ImageStyles.Image, { role: props.role, alt: props.alt, decoding: props.preload ? 'sync' : 'async', loading: props.loading ? props.loading : 'lazy', objectFit: props.objectFit, objectPosition: props.objectPosition, draggable: props.draggable, sizes: sizes, srcSet: srcSetUrls, src: src, onError: handleError, \r\n /*// @ts-ignore */\r\n fetchPriority: props.preload ? 'high' : 'auto' })));\r\n break;\r\n }\r\n case 'fixed': {\r\n components = (React.createElement(ImageStyles.Fixed, { width: props.width, height: props.height },\r\n React.createElement(ImageStyles.Image, { role: props.role, alt: props.alt, decoding: props.preload ? 'sync' : 'async', loading: props.loading ? props.loading : 'lazy', objectFit: props.objectFit, objectPosition: props.objectPosition, draggable: props.draggable, sizes: sizes, srcSet: srcSetUrls, src: src, onError: handleError, \r\n /*// @ts-ignore */\r\n fetchPriority: props.preload ? 'high' : 'auto' })));\r\n break;\r\n }\r\n case 'fill': {\r\n components = (React.createElement(ImageStyles.Fill, null,\r\n React.createElement(ImageStyles.Image, { role: props.role, alt: props.alt, decoding: props.preload ? 'sync' : 'async', loading: props.loading ? props.loading : 'lazy', draggable: props.draggable, objectFit: props.objectFit, objectPosition: props.objectPosition, sizes: sizes, srcSet: srcSetUrls, src: src, onError: handleError, \r\n /*// @ts-ignore */\r\n fetchPriority: props.preload ? 'high' : 'auto' })));\r\n break;\r\n }\r\n }\r\n return React.createElement(React.Fragment, null, components);\r\n};\r\nexport default Image;\r\n","import { HireCardStyles } from '@stories/Components/Cards/HireCard/HireCard.styles';\r\nimport styled from 'styled-components';\r\nconst Wrapper = styled.div ``;\r\nconst List = styled.div `\r\n max-width: 700px;\r\n margin: 0 auto;\r\n\r\n ${HireCardStyles.Card} {\r\n margin-bottom: 24px;\r\n }\r\n`;\r\nconst ButtonWrapper = styled.div `\r\n text-align: center;\r\n margin: 50px 0;\r\n`;\r\nexport const OrderOverviewStyles = {\r\n Wrapper,\r\n List,\r\n ButtonWrapper,\r\n};\r\n","import { HireViewType, HydrateOption } from '@core/enums';\r\nimport withRedux from '@helpers/withRedux';\r\nimport withWidget from '@hoc/withWidget';\r\nimport { LinkButton } from '@stories/Components/Buttons/Button/Button';\r\nimport HireCard from '@stories/Components/Cards/HireCard/HireCard';\r\nimport OrderProgressBar from '@stories/Components/Checkout/OrderProgressBar/OrderProgressBar';\r\nimport StyledSection from '@stories/Components/Containers/StyledSection/StyledSection';\r\nimport IntroductionContent from '@stories/Components/Content/IntroductionContent/IntroductionContent';\r\nimport React from 'react';\r\nimport { useSelector } from 'react-redux';\r\nimport { OrderOverviewStyles as S } from './OrderOverview.styles';\r\nconst OrderOverview = (props) => {\r\n const basket = useSelector((x) => x.basket);\r\n const app = useSelector((x) => x.app);\r\n const text = basket.basket && basket.basket.order && basket.basket.order.orderLines.length > 0\r\n ? props.text\r\n : props.translations['g42.checkout.emptybasket'];\r\n return (React.createElement(S.Wrapper, null,\r\n React.createElement(OrderProgressBar, { items: props.steps }),\r\n React.createElement(StyledSection, null,\r\n React.createElement(IntroductionContent, { title: props.title, text: text, centerText: true }),\r\n React.createElement(S.List, null, basket.basket?.order?.orderLines.map((x) => {\r\n return (React.createElement(HireCard, { key: x.productId, hire: {\r\n id: x.productId,\r\n quantity: x.quantity,\r\n allowDelete: true,\r\n variant: x.productName,\r\n title: x.productGroupName,\r\n imageUrl: x.productImageUrl,\r\n price: x.ratePrice,\r\n priceFormatted: x.ratePriceFormatted,\r\n startDate: new Date(x.hireDateStart),\r\n endDate: new Date(x.hireDateEnd),\r\n hireViewType: HireViewType.Editable,\r\n dayHirePeriodText: props.translations['g42.productdetail.dayhireperiodtext'],\r\n priceSuffix: props.translations['g42.productdetails.pricesuffix.perweek'],\r\n quantityLabel: props.translations['g42.productdetail.selectquantity'],\r\n startDateLabel: props.translations['g42.productdetail.startdatelabel'],\r\n endDateLabel: props.translations['g42.productdetail.enddatelabel'],\r\n productQuestion: x.lineQuestions && x.lineQuestions.length > 0 ? x.lineQuestions[0] : '',\r\n }, excludedDates: app.excludedDates }));\r\n })),\r\n basket.basket && basket.basket.order && basket.basket.order.orderLines.length > 0 ? (React.createElement(S.ButtonWrapper, null,\r\n React.createElement(LinkButton, { branding: \"primary\", title: props.buttonText, href: app.checkoutDetailsUrl }))) : null)));\r\n};\r\nexport default withWidget(withRedux(OrderOverview), 'OrderOverview', {\r\n hydrate: HydrateOption.InView,\r\n});\r\n","var _path;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgSelectArrowUp(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 15.438,\n height: 9.133\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n \"data-name\": \"Path 367\",\n d: \"M.707 8.426l7.012-7.012 7.012 7.012\",\n fill: \"none\",\n stroke: \"#333\",\n strokeWidth: 2\n })));\n}\n\nexport default __webpack_public_path__ + \"af12012180f17cb15c081e8255da89f9.svg\";\nexport { SvgSelectArrowUp as ReactComponent };"],"sourceRoot":""}