{"version":3,"sources":["webpack:///./node_modules/js-cookie/src/js.cookie.js","webpack:///./src/media/img/app-icon.png","webpack:///./src/components/AndroidAppPrompt/index.tsx"],"names":["factory","module","exports","OldCookies","window","Cookies","api","noConflict","extend","i","result","arguments","length","attributes","key","decode","s","replace","decodeURIComponent","init","converter","set","value","document","path","defaults","expires","Date","toUTCString","JSON","stringify","test","e","write","encodeURIComponent","String","escape","stringifiedAttributes","attributeName","split","cookie","get","json","jar","cookies","parts","slice","join","charAt","name","read","parse","getJSON","remove","withConverter","_slicedToArray","r","Array","isArray","_arrayWithHoles","l","t","Symbol","iterator","n","u","a","f","o","call","next","Object","done","push","return","_iterableToArrayLimit","_arrayLikeToArray","toString","constructor","from","_unsupportedIterableToArray","TypeError","_nonIterableRest","_useState2","showPrompt","setShowPrompt","dismissed","navigator","userAgent","handlePromptDismissed","sameSite","createElement","className","id","style","display","onClick","onKeyPress","role","tabIndex","href","target","rel","src","alt"],"mappings":"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","file":"habitat.46.component.js","sourcesContent":["/*!\n * JavaScript Cookie v2.2.1\n * https://github.com/js-cookie/js-cookie\n *\n * Copyright 2006, 2015 Klaus Hartl & Fagner Brack\n * Released under the MIT license\n */\n;(function (factory) {\n\tvar registeredInModuleLoader;\n\tif (typeof define === 'function' && define.amd) {\n\t\tdefine(factory);\n\t\tregisteredInModuleLoader = true;\n\t}\n\tif (typeof exports === 'object') {\n\t\tmodule.exports = factory();\n\t\tregisteredInModuleLoader = true;\n\t}\n\tif (!registeredInModuleLoader) {\n\t\tvar OldCookies = window.Cookies;\n\t\tvar api = window.Cookies = factory();\n\t\tapi.noConflict = function () {\n\t\t\twindow.Cookies = OldCookies;\n\t\t\treturn api;\n\t\t};\n\t}\n}(function () {\n\tfunction extend () {\n\t\tvar i = 0;\n\t\tvar result = {};\n\t\tfor (; i < arguments.length; i++) {\n\t\t\tvar attributes = arguments[ i ];\n\t\t\tfor (var key in attributes) {\n\t\t\t\tresult[key] = attributes[key];\n\t\t\t}\n\t\t}\n\t\treturn result;\n\t}\n\n\tfunction decode (s) {\n\t\treturn s.replace(/(%[0-9A-Z]{2})+/g, decodeURIComponent);\n\t}\n\n\tfunction init (converter) {\n\t\tfunction api() {}\n\n\t\tfunction set (key, value, attributes) {\n\t\t\tif (typeof document === 'undefined') {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tattributes = extend({\n\t\t\t\tpath: '/'\n\t\t\t}, api.defaults, attributes);\n\n\t\t\tif (typeof attributes.expires === 'number') {\n\t\t\t\tattributes.expires = new Date(new Date() * 1 + attributes.expires * 864e+5);\n\t\t\t}\n\n\t\t\t// We're using \"expires\" because \"max-age\" is not supported by IE\n\t\t\tattributes.expires = attributes.expires ? attributes.expires.toUTCString() : '';\n\n\t\t\ttry {\n\t\t\t\tvar result = JSON.stringify(value);\n\t\t\t\tif (/^[\\{\\[]/.test(result)) {\n\t\t\t\t\tvalue = result;\n\t\t\t\t}\n\t\t\t} catch (e) {}\n\n\t\t\tvalue = converter.write ?\n\t\t\t\tconverter.write(value, key) :\n\t\t\t\tencodeURIComponent(String(value))\n\t\t\t\t\t.replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g, decodeURIComponent);\n\n\t\t\tkey = encodeURIComponent(String(key))\n\t\t\t\t.replace(/%(23|24|26|2B|5E|60|7C)/g, decodeURIComponent)\n\t\t\t\t.replace(/[\\(\\)]/g, escape);\n\n\t\t\tvar stringifiedAttributes = '';\n\t\t\tfor (var attributeName in attributes) {\n\t\t\t\tif (!attributes[attributeName]) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tstringifiedAttributes += '; ' + attributeName;\n\t\t\t\tif (attributes[attributeName] === true) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\t// Considers RFC 6265 section 5.2:\n\t\t\t\t// ...\n\t\t\t\t// 3.  If the remaining unparsed-attributes contains a %x3B (\";\")\n\t\t\t\t//     character:\n\t\t\t\t// Consume the characters of the unparsed-attributes up to,\n\t\t\t\t// not including, the first %x3B (\";\") character.\n\t\t\t\t// ...\n\t\t\t\tstringifiedAttributes += '=' + attributes[attributeName].split(';')[0];\n\t\t\t}\n\n\t\t\treturn (document.cookie = key + '=' + value + stringifiedAttributes);\n\t\t}\n\n\t\tfunction get (key, json) {\n\t\t\tif (typeof document === 'undefined') {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar jar = {};\n\t\t\t// To prevent the for loop in the first place assign an empty array\n\t\t\t// in case there are no cookies at all.\n\t\t\tvar cookies = document.cookie ? document.cookie.split('; ') : [];\n\t\t\tvar i = 0;\n\n\t\t\tfor (; i < cookies.length; i++) {\n\t\t\t\tvar parts = cookies[i].split('=');\n\t\t\t\tvar cookie = parts.slice(1).join('=');\n\n\t\t\t\tif (!json && cookie.charAt(0) === '\"') {\n\t\t\t\t\tcookie = cookie.slice(1, -1);\n\t\t\t\t}\n\n\t\t\t\ttry {\n\t\t\t\t\tvar name = decode(parts[0]);\n\t\t\t\t\tcookie = (converter.read || converter)(cookie, name) ||\n\t\t\t\t\t\tdecode(cookie);\n\n\t\t\t\t\tif (json) {\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tcookie = JSON.parse(cookie);\n\t\t\t\t\t\t} catch (e) {}\n\t\t\t\t\t}\n\n\t\t\t\t\tjar[name] = cookie;\n\n\t\t\t\t\tif (key === name) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t} catch (e) {}\n\t\t\t}\n\n\t\t\treturn key ? jar[key] : jar;\n\t\t}\n\n\t\tapi.set = set;\n\t\tapi.get = function (key) {\n\t\t\treturn get(key, false /* read as raw */);\n\t\t};\n\t\tapi.getJSON = function (key) {\n\t\t\treturn get(key, true /* read as json */);\n\t\t};\n\t\tapi.remove = function (key, attributes) {\n\t\t\tset(key, '', extend(attributes, {\n\t\t\t\texpires: -1\n\t\t\t}));\n\t\t};\n\n\t\tapi.defaults = {};\n\n\t\tapi.withConverter = init;\n\n\t\treturn api;\n\t}\n\n\treturn init(function () {});\n}));\n","module.exports = __webpack_public_path__ + \"./img/app-icon.png\";","'use client';\n\nfunction _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(r, a) { if (r) { if (\"string\" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }\nfunction _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }\nfunction _iterableToArrayLimit(r, l) { var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }\nfunction _arrayWithHoles(r) { if (Array.isArray(r)) return r; }\nimport React, { useEffect, useState } from 'react';\nimport Cookies from 'js-cookie';\nimport './styles.scss';\nimport AppIcon from '../../media/img/app-icon.png';\nvar AndroidAppPrompt = function AndroidAppPrompt() {\n  var _useState = useState(false),\n    _useState2 = _slicedToArray(_useState, 2),\n    showPrompt = _useState2[0],\n    setShowPrompt = _useState2[1];\n  var title = 'Team GB';\n  var subtitle = 'Support Team GB at the Paris 2024 Olympic Games';\n  useEffect(function () {\n    var handleDisplayAndroidPrompt = function handleDisplayAndroidPrompt() {\n      var dismissed = Cookies.get('androidAppDismissed');\n      var isAndroid = /Android/.test(navigator.userAgent);\n      if (isAndroid && !dismissed) {\n        setShowPrompt(true);\n      }\n    };\n    handleDisplayAndroidPrompt();\n    // es-lint-disable-next-line react-hooks/exhaustive-deps\n  }, []);\n  var handlePromptDismissed = function handlePromptDismissed() {\n    setShowPrompt(false);\n    Cookies.set('androidAppDismissed', 'true', {\n      expires: 30,\n      sameSite: 'lax'\n    });\n  };\n  return /*#__PURE__*/React.createElement(\"div\", {\n    className: \"android-prompt\",\n    id: \"android-app-prompt\",\n    style: {\n      display: showPrompt ? 'block' : 'none'\n    }\n  }, /*#__PURE__*/React.createElement(\"div\", {\n    className: \"android-prompt__content\"\n  }, /*#__PURE__*/React.createElement(\"span\", {\n    \"data-action\": \"close-prompt\",\n    onClick: handlePromptDismissed,\n    onKeyPress: handlePromptDismissed,\n    role: \"button\",\n    tabIndex: 0\n  }, \"\\u2715\"), /*#__PURE__*/React.createElement(\"a\", {\n    href: \"https://play.google.com/store/apps/details?id=com.teamgb.app\",\n    target: \"_blank\",\n    rel: \"noopener noreferrer\"\n  }, /*#__PURE__*/React.createElement(\"img\", {\n    src: AppIcon,\n    alt: \"Download the Team GB app on Google Play\"\n  }), /*#__PURE__*/React.createElement(\"div\", {\n    className: \"android-prompt__title\"\n  }, /*#__PURE__*/React.createElement(\"strong\", null, title), /*#__PURE__*/React.createElement(\"small\", null, subtitle)), /*#__PURE__*/React.createElement(\"span\", {\n    className: \"view-app\"\n  }, \"View\"))));\n};\nexport default AndroidAppPrompt;"],"sourceRoot":""}