{"version":3,"file":"d731957b3a529539e7374eefec7b894c5418b6d2-5a75ea4e7e1e99576339.js","mappings":"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","sources":["webpack://jackpot-party/./node_modules/react-fast-compare/index.js","webpack://jackpot-party/./src/images/arrow.tsx","webpack://jackpot-party/./src/components/menu/nav-items.tsx","webpack://jackpot-party/./node_modules/react-device-detect/dist/lib.js","webpack://jackpot-party/./src/components/menu/menu.tsx","webpack://jackpot-party/../src/image-utils.ts","webpack://jackpot-party/../src/components/hooks.ts","webpack://jackpot-party/../src/components/layout-wrapper.tsx","webpack://jackpot-party/../src/components/picture.tsx","webpack://jackpot-party/../src/components/placeholder.tsx","webpack://jackpot-party/../src/components/main-image.tsx","webpack://jackpot-party/../src/components/gatsby-image.server.tsx","webpack://jackpot-party/../src/components/gatsby-image.browser.tsx","webpack://jackpot-party/../src/components/static-image.server.tsx","webpack://jackpot-party/../src/components/static-image.tsx","webpack://jackpot-party/./node_modules/react-side-effect/lib/index.js","webpack://jackpot-party/./node_modules/hamburger-react/dist-esm/Burger.js","webpack://jackpot-party/./node_modules/hamburger-react/dist-esm/Spin.js","webpack://jackpot-party/./src/components/menu/menu-mobile.tsx","webpack://jackpot-party/./src/components/stores.tsx","webpack://jackpot-party/./node_modules/camelcase/index.js","webpack://jackpot-party/./node_modules/query-params-hook/lib/index.js","webpack://jackpot-party/./node_modules/ua-parser-js/dist/ua-parser.min.js","webpack://jackpot-party/./src/utilities/replace-by-dict.ts","webpack://jackpot-party/./src/components/download-popup.tsx","webpack://jackpot-party/./src/components/sciplay-games.tsx","webpack://jackpot-party/./src/components/footer.tsx","webpack://jackpot-party/./node_modules/react-helmet/es/Helmet.js","webpack://jackpot-party/./src/utilities/useIsMobile.tsx","webpack://jackpot-party/./src/utilities/use-scroll-position.tsx","webpack://jackpot-party/./src/components/adjust-link.tsx"],"sourcesContent":["/* global Map:readonly, Set:readonly, ArrayBuffer:readonly */\n\nvar hasElementType = typeof Element !== 'undefined';\nvar hasMap = typeof Map === 'function';\nvar hasSet = typeof Set === 'function';\nvar hasArrayBuffer = typeof ArrayBuffer === 'function' && !!ArrayBuffer.isView;\n\n// Note: We **don't** need `envHasBigInt64Array` in fde es6/index.js\n\nfunction equal(a, b) {\n // START: fast-deep-equal es6/index.js 3.1.3\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n if (a.constructor !== b.constructor) return false;\n\n var length, i, keys;\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n // START: Modifications:\n // 1. Extra `has &&` helpers in initial condition allow es6 code\n // to co-exist with es5.\n // 2. Replace `for of` with es5 compliant iteration using `for`.\n // Basically, take:\n //\n // ```js\n // for (i of a.entries())\n // if (!b.has(i[0])) return false;\n // ```\n //\n // ... and convert to:\n //\n // ```js\n // it = a.entries();\n // while (!(i = it.next()).done)\n // if (!b.has(i.value[0])) return false;\n // ```\n //\n // **Note**: `i` access switches to `i.value`.\n var it;\n if (hasMap && (a instanceof Map) && (b instanceof Map)) {\n if (a.size !== b.size) return false;\n it = a.entries();\n while (!(i = it.next()).done)\n if (!b.has(i.value[0])) return false;\n it = a.entries();\n while (!(i = it.next()).done)\n if (!equal(i.value[1], b.get(i.value[0]))) return false;\n return true;\n }\n\n if (hasSet && (a instanceof Set) && (b instanceof Set)) {\n if (a.size !== b.size) return false;\n it = a.entries();\n while (!(i = it.next()).done)\n if (!b.has(i.value[0])) return false;\n return true;\n }\n // END: Modifications\n\n if (hasArrayBuffer && ArrayBuffer.isView(a) && ArrayBuffer.isView(b)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (a[i] !== b[i]) return false;\n return true;\n }\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n // START: Modifications:\n // Apply guards for `Object.create(null)` handling. See:\n // - https://github.com/FormidableLabs/react-fast-compare/issues/64\n // - https://github.com/epoberezkin/fast-deep-equal/issues/49\n if (a.valueOf !== Object.prototype.valueOf && typeof a.valueOf === 'function' && typeof b.valueOf === 'function') return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString && typeof a.toString === 'function' && typeof b.toString === 'function') return a.toString() === b.toString();\n // END: Modifications\n\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;)\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n // END: fast-deep-equal\n\n // START: react-fast-compare\n // custom handling for DOM elements\n if (hasElementType && a instanceof Element) return false;\n\n // custom handling for React/Preact\n for (i = length; i-- !== 0;) {\n if ((keys[i] === '_owner' || keys[i] === '__v' || keys[i] === '__o') && a.$$typeof) {\n // React-specific: avoid traversing React elements' _owner\n // Preact-specific: avoid traversing Preact elements' __v and __o\n // __v = $_original / $_vnode\n // __o = $_owner\n // These properties contain circular references and are not needed when\n // comparing the actual elements (and not their owners)\n // .$$typeof and ._store on just reasonable markers of elements\n\n continue;\n }\n\n // all other properties should be traversed as usual\n if (!equal(a[keys[i]], b[keys[i]])) return false;\n }\n // END: react-fast-compare\n\n // START: fast-deep-equal\n return true;\n }\n\n return a !== a && b !== b;\n}\n// end fast-deep-equal\n\nmodule.exports = function isEqual(a, b) {\n try {\n return equal(a, b);\n } catch (error) {\n if (((error.message || '').match(/stack|recursion/i))) {\n // warn on circular references, don't crash\n // browsers give this different errors name and messages:\n // chrome/safari: \"RangeError\", \"Maximum call stack size exceeded\"\n // firefox: \"InternalError\", too much recursion\"\n // edge: \"Error\", \"Out of stack space\"\n console.warn('react-fast-compare cannot handle circular refs');\n return false;\n }\n // some other error. we should definitely know about these\n throw error;\n }\n};\n","import React from \"react\";\n\nconst Arrow = () => {\n return (\n \n \n \n );\n};\n\nexport default Arrow;\n","import React from \"react\";\nimport { Link, navigate } from \"gatsby\";\nimport { StaticImage } from \"gatsby-plugin-image\";\nimport SciplayGames from \"../sciplay-games\";\nimport { isDesktop } from \"react-device-detect\";\nimport Arrow from \"../../images/arrow\";\nimport { useLocation } from \"@reach/router\";\n\nconst NavItems = ({\n openMobileMenu,\n onOpenMenuClick,\n}: {\n openMobileMenu?: any;\n onOpenMenuClick?: any;\n}) => {\n const { pathname } = useLocation();\n return (\n <>\n onOpenMenuClick?.(\"slotsGames\")}\n >\n isDesktop && navigate(\"/slot-games\")}\n >\n
SLOTS GAMES
\n \n \n \n \n
\n
\n \n
\n
\n Free Slots\n
\n
\n \n Free Slots With Bonus\n \n
\n
\n Trending Slots\n
\n
\n Classic Slots\n
\n
\n Video Slots\n
\n
\n \n Progressive Slots\n \n
\n
\n Vegas Slots\n
\n
\n Bally Slots\n
\n
\n WMS Slots\n
\n
\n
\n
\n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n
\n
\n
\n \n \n {/* \n PROMOTIONS\n \n
|
*/}\n \n FREE COINS\n \n \n \n HELP\n \n \n {!pathname.includes(\"/blog\") && (\n <>\n \n BLOG\n \n \n \n )}\n onOpenMenuClick?.(\"sciplayApps\")}\n >\n \n isDesktop && window.open(\"https://www.sciplay.com/#games\", \"_blank\")\n }\n >\n
SCIPLAY APPS
\n
\n \n
\n \n
\n
\n \n \n
\n
\n \n \n );\n};\n\nexport default NavItems;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nfunction _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }\n\nvar React = require('react');\nvar React__default = _interopDefault(React);\n\nvar UAParser = require('ua-parser-js/dist/ua-parser.min');\n\nvar ClientUAInstance = new UAParser();\nvar browser = ClientUAInstance.getBrowser();\nvar cpu = ClientUAInstance.getCPU();\nvar device = ClientUAInstance.getDevice();\nvar engine = ClientUAInstance.getEngine();\nvar os = ClientUAInstance.getOS();\nvar ua = ClientUAInstance.getUA();\nvar setUa = function setUa(userAgentString) {\n return ClientUAInstance.setUA(userAgentString);\n};\nvar parseUserAgent = function parseUserAgent(userAgent) {\n if (!userAgent) {\n console.error('No userAgent string was provided');\n return;\n }\n\n var UserAgentInstance = new UAParser(userAgent);\n return {\n UA: UserAgentInstance,\n browser: UserAgentInstance.getBrowser(),\n cpu: UserAgentInstance.getCPU(),\n device: UserAgentInstance.getDevice(),\n engine: UserAgentInstance.getEngine(),\n os: UserAgentInstance.getOS(),\n ua: UserAgentInstance.getUA(),\n setUserAgent: function setUserAgent(userAgentString) {\n return UserAgentInstance.setUA(userAgentString);\n }\n };\n};\n\nvar UAHelper = /*#__PURE__*/Object.freeze({\n ClientUAInstance: ClientUAInstance,\n browser: browser,\n cpu: cpu,\n device: device,\n engine: engine,\n os: os,\n ua: ua,\n setUa: setUa,\n parseUserAgent: parseUserAgent\n});\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n\n if (enumerableOnly) {\n symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n }\n\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (typeof call === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n\n var _s, _e;\n\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nvar DeviceTypes = {\n Mobile: 'mobile',\n Tablet: 'tablet',\n SmartTv: 'smarttv',\n Console: 'console',\n Wearable: 'wearable',\n Embedded: 'embedded',\n Browser: undefined\n};\nvar BrowserTypes = {\n Chrome: 'Chrome',\n Firefox: 'Firefox',\n Opera: 'Opera',\n Yandex: 'Yandex',\n Safari: 'Safari',\n InternetExplorer: 'Internet Explorer',\n Edge: 'Edge',\n Chromium: 'Chromium',\n Ie: 'IE',\n MobileSafari: 'Mobile Safari',\n EdgeChromium: 'Edge Chromium',\n MIUI: 'MIUI Browser',\n SamsungBrowser: 'Samsung Browser'\n};\nvar OsTypes = {\n IOS: 'iOS',\n Android: 'Android',\n WindowsPhone: 'Windows Phone',\n Windows: 'Windows',\n MAC_OS: 'Mac OS'\n};\nvar InitialDeviceTypes = {\n isMobile: false,\n isTablet: false,\n isBrowser: false,\n isSmartTV: false,\n isConsole: false,\n isWearable: false\n};\n\nvar checkDeviceType = function checkDeviceType(type) {\n switch (type) {\n case DeviceTypes.Mobile:\n return {\n isMobile: true\n };\n\n case DeviceTypes.Tablet:\n return {\n isTablet: true\n };\n\n case DeviceTypes.SmartTv:\n return {\n isSmartTV: true\n };\n\n case DeviceTypes.Console:\n return {\n isConsole: true\n };\n\n case DeviceTypes.Wearable:\n return {\n isWearable: true\n };\n\n case DeviceTypes.Browser:\n return {\n isBrowser: true\n };\n\n case DeviceTypes.Embedded:\n return {\n isEmbedded: true\n };\n\n default:\n return InitialDeviceTypes;\n }\n};\nvar setUserAgent = function setUserAgent(userAgent) {\n return setUa(userAgent);\n};\nvar setDefaults = function setDefaults(p) {\n var d = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'none';\n return p ? p : d;\n};\nvar getNavigatorInstance = function getNavigatorInstance() {\n if (typeof window !== 'undefined') {\n if (window.navigator || navigator) {\n return window.navigator || navigator;\n }\n }\n\n return false;\n};\nvar isIOS13Check = function isIOS13Check(type) {\n var nav = getNavigatorInstance();\n return nav && nav.platform && (nav.platform.indexOf(type) !== -1 || nav.platform === 'MacIntel' && nav.maxTouchPoints > 1 && !window.MSStream);\n};\n\nvar browserPayload = function browserPayload(isBrowser, browser, engine, os, ua) {\n return {\n isBrowser: isBrowser,\n browserMajorVersion: setDefaults(browser.major),\n browserFullVersion: setDefaults(browser.version),\n browserName: setDefaults(browser.name),\n engineName: setDefaults(engine.name),\n engineVersion: setDefaults(engine.version),\n osName: setDefaults(os.name),\n osVersion: setDefaults(os.version),\n userAgent: setDefaults(ua)\n };\n};\nvar mobilePayload = function mobilePayload(type, device, os, ua) {\n return _objectSpread2({}, type, {\n vendor: setDefaults(device.vendor),\n model: setDefaults(device.model),\n os: setDefaults(os.name),\n osVersion: setDefaults(os.version),\n ua: setDefaults(ua)\n });\n};\nvar smartTvPayload = function smartTvPayload(isSmartTV, engine, os, ua) {\n return {\n isSmartTV: isSmartTV,\n engineName: setDefaults(engine.name),\n engineVersion: setDefaults(engine.version),\n osName: setDefaults(os.name),\n osVersion: setDefaults(os.version),\n userAgent: setDefaults(ua)\n };\n};\nvar consolePayload = function consolePayload(isConsole, engine, os, ua) {\n return {\n isConsole: isConsole,\n engineName: setDefaults(engine.name),\n engineVersion: setDefaults(engine.version),\n osName: setDefaults(os.name),\n osVersion: setDefaults(os.version),\n userAgent: setDefaults(ua)\n };\n};\nvar wearablePayload = function wearablePayload(isWearable, engine, os, ua) {\n return {\n isWearable: isWearable,\n engineName: setDefaults(engine.name),\n engineVersion: setDefaults(engine.version),\n osName: setDefaults(os.name),\n osVersion: setDefaults(os.version),\n userAgent: setDefaults(ua)\n };\n};\nvar embeddedPayload = function embeddedPayload(isEmbedded, device, engine, os, ua) {\n return {\n isEmbedded: isEmbedded,\n vendor: setDefaults(device.vendor),\n model: setDefaults(device.model),\n engineName: setDefaults(engine.name),\n engineVersion: setDefaults(engine.version),\n osName: setDefaults(os.name),\n osVersion: setDefaults(os.version),\n userAgent: setDefaults(ua)\n };\n};\n\nfunction deviceDetect(userAgent) {\n var _ref = userAgent ? parseUserAgent(userAgent) : UAHelper,\n device = _ref.device,\n browser = _ref.browser,\n engine = _ref.engine,\n os = _ref.os,\n ua = _ref.ua;\n\n var type = checkDeviceType(device.type);\n var isBrowser = type.isBrowser,\n isMobile = type.isMobile,\n isTablet = type.isTablet,\n isSmartTV = type.isSmartTV,\n isConsole = type.isConsole,\n isWearable = type.isWearable,\n isEmbedded = type.isEmbedded;\n\n if (isBrowser) {\n return browserPayload(isBrowser, browser, engine, os, ua);\n }\n\n if (isSmartTV) {\n return smartTvPayload(isSmartTV, engine, os, ua);\n }\n\n if (isConsole) {\n return consolePayload(isConsole, engine, os, ua);\n }\n\n if (isMobile) {\n return mobilePayload(type, device, os, ua);\n }\n\n if (isTablet) {\n return mobilePayload(type, device, os, ua);\n }\n\n if (isWearable) {\n return wearablePayload(isWearable, engine, os, ua);\n }\n\n if (isEmbedded) {\n return embeddedPayload(isEmbedded, device, engine, os, ua);\n }\n}\n\nvar isMobileType = function isMobileType(_ref) {\n var type = _ref.type;\n return type === DeviceTypes.Mobile;\n};\nvar isTabletType = function isTabletType(_ref2) {\n var type = _ref2.type;\n return type === DeviceTypes.Tablet;\n};\nvar isMobileAndTabletType = function isMobileAndTabletType(_ref3) {\n var type = _ref3.type;\n return type === DeviceTypes.Mobile || type === DeviceTypes.Tablet;\n};\nvar isSmartTVType = function isSmartTVType(_ref4) {\n var type = _ref4.type;\n return type === DeviceTypes.SmartTv;\n};\nvar isBrowserType = function isBrowserType(_ref5) {\n var type = _ref5.type;\n return type === DeviceTypes.Browser;\n};\nvar isWearableType = function isWearableType(_ref6) {\n var type = _ref6.type;\n return type === DeviceTypes.Wearable;\n};\nvar isConsoleType = function isConsoleType(_ref7) {\n var type = _ref7.type;\n return type === DeviceTypes.Console;\n};\nvar isEmbeddedType = function isEmbeddedType(_ref8) {\n var type = _ref8.type;\n return type === DeviceTypes.Embedded;\n};\nvar getMobileVendor = function getMobileVendor(_ref9) {\n var vendor = _ref9.vendor;\n return setDefaults(vendor);\n};\nvar getMobileModel = function getMobileModel(_ref10) {\n var model = _ref10.model;\n return setDefaults(model);\n};\nvar getDeviceType = function getDeviceType(_ref11) {\n var type = _ref11.type;\n return setDefaults(type, 'browser');\n}; // os types\n\nvar isAndroidType = function isAndroidType(_ref12) {\n var name = _ref12.name;\n return name === OsTypes.Android;\n};\nvar isWindowsType = function isWindowsType(_ref13) {\n var name = _ref13.name;\n return name === OsTypes.Windows;\n};\nvar isMacOsType = function isMacOsType(_ref14) {\n var name = _ref14.name;\n return name === OsTypes.MAC_OS;\n};\nvar isWinPhoneType = function isWinPhoneType(_ref15) {\n var name = _ref15.name;\n return name === OsTypes.WindowsPhone;\n};\nvar isIOSType = function isIOSType(_ref16) {\n var name = _ref16.name;\n return name === OsTypes.IOS;\n};\nvar getOsVersion = function getOsVersion(_ref17) {\n var version = _ref17.version;\n return setDefaults(version);\n};\nvar getOsName = function getOsName(_ref18) {\n var name = _ref18.name;\n return setDefaults(name);\n}; // browser types\n\nvar isChromeType = function isChromeType(_ref19) {\n var name = _ref19.name;\n return name === BrowserTypes.Chrome;\n};\nvar isFirefoxType = function isFirefoxType(_ref20) {\n var name = _ref20.name;\n return name === BrowserTypes.Firefox;\n};\nvar isChromiumType = function isChromiumType(_ref21) {\n var name = _ref21.name;\n return name === BrowserTypes.Chromium;\n};\nvar isEdgeType = function isEdgeType(_ref22) {\n var name = _ref22.name;\n return name === BrowserTypes.Edge;\n};\nvar isYandexType = function isYandexType(_ref23) {\n var name = _ref23.name;\n return name === BrowserTypes.Yandex;\n};\nvar isSafariType = function isSafariType(_ref24) {\n var name = _ref24.name;\n return name === BrowserTypes.Safari || name === BrowserTypes.MobileSafari;\n};\nvar isMobileSafariType = function isMobileSafariType(_ref25) {\n var name = _ref25.name;\n return name === BrowserTypes.MobileSafari;\n};\nvar isOperaType = function isOperaType(_ref26) {\n var name = _ref26.name;\n return name === BrowserTypes.Opera;\n};\nvar isIEType = function isIEType(_ref27) {\n var name = _ref27.name;\n return name === BrowserTypes.InternetExplorer || name === BrowserTypes.Ie;\n};\nvar isMIUIType = function isMIUIType(_ref28) {\n var name = _ref28.name;\n return name === BrowserTypes.MIUI;\n};\nvar isSamsungBrowserType = function isSamsungBrowserType(_ref29) {\n var name = _ref29.name;\n return name === BrowserTypes.SamsungBrowser;\n};\nvar getBrowserFullVersion = function getBrowserFullVersion(_ref30) {\n var version = _ref30.version;\n return setDefaults(version);\n};\nvar getBrowserVersion = function getBrowserVersion(_ref31) {\n var major = _ref31.major;\n return setDefaults(major);\n};\nvar getBrowserName = function getBrowserName(_ref32) {\n var name = _ref32.name;\n return setDefaults(name);\n}; // engine types\n\nvar getEngineName = function getEngineName(_ref33) {\n var name = _ref33.name;\n return setDefaults(name);\n};\nvar getEngineVersion = function getEngineVersion(_ref34) {\n var version = _ref34.version;\n return setDefaults(version);\n};\nvar isElectronType = function isElectronType() {\n var nav = getNavigatorInstance();\n var ua = nav && nav.userAgent && nav.userAgent.toLowerCase();\n return typeof ua === 'string' ? /electron/.test(ua) : false;\n};\nvar isEdgeChromiumType = function isEdgeChromiumType(ua) {\n return typeof ua === 'string' && ua.indexOf('Edg/') !== -1;\n};\nvar getIOS13 = function getIOS13() {\n var nav = getNavigatorInstance();\n return nav && (/iPad|iPhone|iPod/.test(nav.platform) || nav.platform === 'MacIntel' && nav.maxTouchPoints > 1) && !window.MSStream;\n};\nvar getIPad13 = function getIPad13() {\n return isIOS13Check('iPad');\n};\nvar getIphone13 = function getIphone13() {\n return isIOS13Check('iPhone');\n};\nvar getIPod13 = function getIPod13() {\n return isIOS13Check('iPod');\n};\nvar getUseragent = function getUseragent(userAg) {\n return setDefaults(userAg);\n};\n\nfunction buildSelectorsObject(options) {\n var _ref = options ? options : UAHelper,\n device = _ref.device,\n browser = _ref.browser,\n os = _ref.os,\n engine = _ref.engine,\n ua = _ref.ua;\n\n return {\n isSmartTV: isSmartTVType(device),\n isConsole: isConsoleType(device),\n isWearable: isWearableType(device),\n isEmbedded: isEmbeddedType(device),\n isMobileSafari: isMobileSafariType(browser) || getIPad13(),\n isChromium: isChromiumType(browser),\n isMobile: isMobileAndTabletType(device) || getIPad13(),\n isMobileOnly: isMobileType(device),\n isTablet: isTabletType(device) || getIPad13(),\n isBrowser: isBrowserType(device),\n isDesktop: isBrowserType(device),\n isAndroid: isAndroidType(os),\n isWinPhone: isWinPhoneType(os),\n isIOS: isIOSType(os) || getIPad13(),\n isChrome: isChromeType(browser),\n isFirefox: isFirefoxType(browser),\n isSafari: isSafariType(browser),\n isOpera: isOperaType(browser),\n isIE: isIEType(browser),\n osVersion: getOsVersion(os),\n osName: getOsName(os),\n fullBrowserVersion: getBrowserFullVersion(browser),\n browserVersion: getBrowserVersion(browser),\n browserName: getBrowserName(browser),\n mobileVendor: getMobileVendor(device),\n mobileModel: getMobileModel(device),\n engineName: getEngineName(engine),\n engineVersion: getEngineVersion(engine),\n getUA: getUseragent(ua),\n isEdge: isEdgeType(browser) || isEdgeChromiumType(ua),\n isYandex: isYandexType(browser),\n deviceType: getDeviceType(device),\n isIOS13: getIOS13(),\n isIPad13: getIPad13(),\n isIPhone13: getIphone13(),\n isIPod13: getIPod13(),\n isElectron: isElectronType(),\n isEdgeChromium: isEdgeChromiumType(ua),\n isLegacyEdge: isEdgeType(browser) && !isEdgeChromiumType(ua),\n isWindows: isWindowsType(os),\n isMacOs: isMacOsType(os),\n isMIUI: isMIUIType(browser),\n isSamsungBrowser: isSamsungBrowserType(browser)\n };\n}\n\nvar isSmartTV = isSmartTVType(device);\nvar isConsole = isConsoleType(device);\nvar isWearable = isWearableType(device);\nvar isEmbedded = isEmbeddedType(device);\nvar isMobileSafari = isMobileSafariType(browser) || getIPad13();\nvar isChromium = isChromiumType(browser);\nvar isMobile = isMobileAndTabletType(device) || getIPad13();\nvar isMobileOnly = isMobileType(device);\nvar isTablet = isTabletType(device) || getIPad13();\nvar isBrowser = isBrowserType(device);\nvar isDesktop = isBrowserType(device);\nvar isAndroid = isAndroidType(os);\nvar isWinPhone = isWinPhoneType(os);\nvar isIOS = isIOSType(os) || getIPad13();\nvar isChrome = isChromeType(browser);\nvar isFirefox = isFirefoxType(browser);\nvar isSafari = isSafariType(browser);\nvar isOpera = isOperaType(browser);\nvar isIE = isIEType(browser);\nvar osVersion = getOsVersion(os);\nvar osName = getOsName(os);\nvar fullBrowserVersion = getBrowserFullVersion(browser);\nvar browserVersion = getBrowserVersion(browser);\nvar browserName = getBrowserName(browser);\nvar mobileVendor = getMobileVendor(device);\nvar mobileModel = getMobileModel(device);\nvar engineName = getEngineName(engine);\nvar engineVersion = getEngineVersion(engine);\nvar getUA = getUseragent(ua);\nvar isEdge = isEdgeType(browser) || isEdgeChromiumType(ua);\nvar isYandex = isYandexType(browser);\nvar deviceType = getDeviceType(device);\nvar isIOS13 = getIOS13();\nvar isIPad13 = getIPad13();\nvar isIPhone13 = getIphone13();\nvar isIPod13 = getIPod13();\nvar isElectron = isElectronType();\nvar isEdgeChromium = isEdgeChromiumType(ua);\nvar isLegacyEdge = isEdgeType(browser) && !isEdgeChromiumType(ua);\nvar isWindows = isWindowsType(os);\nvar isMacOs = isMacOsType(os);\nvar isMIUI = isMIUIType(browser);\nvar isSamsungBrowser = isSamsungBrowserType(browser);\nvar getSelectorsByUserAgent = function getSelectorsByUserAgent(userAgent) {\n if (!userAgent || typeof userAgent !== 'string') {\n console.error('No valid user agent string was provided');\n return;\n }\n\n var _UAHelper$parseUserAg = parseUserAgent(userAgent),\n device = _UAHelper$parseUserAg.device,\n browser = _UAHelper$parseUserAg.browser,\n os = _UAHelper$parseUserAg.os,\n engine = _UAHelper$parseUserAg.engine,\n ua = _UAHelper$parseUserAg.ua;\n\n return buildSelectorsObject({\n device: device,\n browser: browser,\n os: os,\n engine: engine,\n ua: ua\n });\n};\n\nvar AndroidView = function AndroidView(_ref) {\n var renderWithFragment = _ref.renderWithFragment,\n children = _ref.children,\n props = _objectWithoutProperties(_ref, [\"renderWithFragment\", \"children\"]);\n\n return isAndroid ? renderWithFragment ? React__default.createElement(React.Fragment, null, children) : React__default.createElement(\"div\", props, children) : null;\n};\nvar BrowserView = function BrowserView(_ref2) {\n var renderWithFragment = _ref2.renderWithFragment,\n children = _ref2.children,\n props = _objectWithoutProperties(_ref2, [\"renderWithFragment\", \"children\"]);\n\n return isBrowser ? renderWithFragment ? React__default.createElement(React.Fragment, null, children) : React__default.createElement(\"div\", props, children) : null;\n};\nvar IEView = function IEView(_ref3) {\n var renderWithFragment = _ref3.renderWithFragment,\n children = _ref3.children,\n props = _objectWithoutProperties(_ref3, [\"renderWithFragment\", \"children\"]);\n\n return isIE ? renderWithFragment ? React__default.createElement(React.Fragment, null, children) : React__default.createElement(\"div\", props, children) : null;\n};\nvar IOSView = function IOSView(_ref4) {\n var renderWithFragment = _ref4.renderWithFragment,\n children = _ref4.children,\n props = _objectWithoutProperties(_ref4, [\"renderWithFragment\", \"children\"]);\n\n return isIOS ? renderWithFragment ? React__default.createElement(React.Fragment, null, children) : React__default.createElement(\"div\", props, children) : null;\n};\nvar MobileView = function MobileView(_ref5) {\n var renderWithFragment = _ref5.renderWithFragment,\n children = _ref5.children,\n props = _objectWithoutProperties(_ref5, [\"renderWithFragment\", \"children\"]);\n\n return isMobile ? renderWithFragment ? React__default.createElement(React.Fragment, null, children) : React__default.createElement(\"div\", props, children) : null;\n};\nvar TabletView = function TabletView(_ref6) {\n var renderWithFragment = _ref6.renderWithFragment,\n children = _ref6.children,\n props = _objectWithoutProperties(_ref6, [\"renderWithFragment\", \"children\"]);\n\n return isTablet ? renderWithFragment ? React__default.createElement(React.Fragment, null, children) : React__default.createElement(\"div\", props, children) : null;\n};\nvar WinPhoneView = function WinPhoneView(_ref7) {\n var renderWithFragment = _ref7.renderWithFragment,\n children = _ref7.children,\n props = _objectWithoutProperties(_ref7, [\"renderWithFragment\", \"children\"]);\n\n return isWinPhone ? renderWithFragment ? React__default.createElement(React.Fragment, null, children) : React__default.createElement(\"div\", props, children) : null;\n};\nvar MobileOnlyView = function MobileOnlyView(_ref8) {\n var renderWithFragment = _ref8.renderWithFragment,\n children = _ref8.children,\n viewClassName = _ref8.viewClassName,\n style = _ref8.style,\n props = _objectWithoutProperties(_ref8, [\"renderWithFragment\", \"children\", \"viewClassName\", \"style\"]);\n\n return isMobileOnly ? renderWithFragment ? React__default.createElement(React.Fragment, null, children) : React__default.createElement(\"div\", props, children) : null;\n};\nvar SmartTVView = function SmartTVView(_ref9) {\n var renderWithFragment = _ref9.renderWithFragment,\n children = _ref9.children,\n props = _objectWithoutProperties(_ref9, [\"renderWithFragment\", \"children\"]);\n\n return isSmartTV ? renderWithFragment ? React__default.createElement(React.Fragment, null, children) : React__default.createElement(\"div\", props, children) : null;\n};\nvar ConsoleView = function ConsoleView(_ref10) {\n var renderWithFragment = _ref10.renderWithFragment,\n children = _ref10.children,\n props = _objectWithoutProperties(_ref10, [\"renderWithFragment\", \"children\"]);\n\n return isConsole ? renderWithFragment ? React__default.createElement(React.Fragment, null, children) : React__default.createElement(\"div\", props, children) : null;\n};\nvar WearableView = function WearableView(_ref11) {\n var renderWithFragment = _ref11.renderWithFragment,\n children = _ref11.children,\n props = _objectWithoutProperties(_ref11, [\"renderWithFragment\", \"children\"]);\n\n return isWearable ? renderWithFragment ? React__default.createElement(React.Fragment, null, children) : React__default.createElement(\"div\", props, children) : null;\n};\nvar CustomView = function CustomView(_ref12) {\n var renderWithFragment = _ref12.renderWithFragment,\n children = _ref12.children,\n viewClassName = _ref12.viewClassName,\n style = _ref12.style,\n condition = _ref12.condition,\n props = _objectWithoutProperties(_ref12, [\"renderWithFragment\", \"children\", \"viewClassName\", \"style\", \"condition\"]);\n\n return condition ? renderWithFragment ? React__default.createElement(React.Fragment, null, children) : React__default.createElement(\"div\", props, children) : null;\n};\n\nfunction withOrientationChange(WrappedComponent) {\n return /*#__PURE__*/function (_React$Component) {\n _inherits(_class, _React$Component);\n\n function _class(props) {\n var _this;\n\n _classCallCheck(this, _class);\n\n _this = _possibleConstructorReturn(this, _getPrototypeOf(_class).call(this, props));\n _this.isEventListenerAdded = false;\n _this.handleOrientationChange = _this.handleOrientationChange.bind(_assertThisInitialized(_this));\n _this.onOrientationChange = _this.onOrientationChange.bind(_assertThisInitialized(_this));\n _this.onPageLoad = _this.onPageLoad.bind(_assertThisInitialized(_this));\n _this.state = {\n isLandscape: false,\n isPortrait: false\n };\n return _this;\n }\n\n _createClass(_class, [{\n key: \"handleOrientationChange\",\n value: function handleOrientationChange() {\n if (!this.isEventListenerAdded) {\n this.isEventListenerAdded = true;\n }\n\n var orientation = window.innerWidth > window.innerHeight ? 90 : 0;\n this.setState({\n isPortrait: orientation === 0,\n isLandscape: orientation === 90\n });\n }\n }, {\n key: \"onOrientationChange\",\n value: function onOrientationChange() {\n this.handleOrientationChange();\n }\n }, {\n key: \"onPageLoad\",\n value: function onPageLoad() {\n this.handleOrientationChange();\n }\n }, {\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if ((typeof window === \"undefined\" ? \"undefined\" : _typeof(window)) !== undefined && isMobile) {\n if (!this.isEventListenerAdded) {\n this.handleOrientationChange();\n window.addEventListener(\"load\", this.onPageLoad, false);\n } else {\n window.removeEventListener(\"load\", this.onPageLoad, false);\n }\n\n window.addEventListener(\"resize\", this.onOrientationChange, false);\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n window.removeEventListener(\"resize\", this.onOrientationChange, false);\n }\n }, {\n key: \"render\",\n value: function render() {\n return React__default.createElement(WrappedComponent, _extends({}, this.props, {\n isLandscape: this.state.isLandscape,\n isPortrait: this.state.isPortrait\n }));\n }\n }]);\n\n return _class;\n }(React__default.Component);\n}\n\nfunction useMobileOrientation() {\n var _useState = React.useState(function () {\n var orientation = window.innerWidth > window.innerHeight ? 90 : 0;\n return {\n isPortrait: orientation === 0,\n isLandscape: orientation === 90,\n orientation: orientation === 0 ? 'portrait' : 'landscape'\n };\n }),\n _useState2 = _slicedToArray(_useState, 2),\n state = _useState2[0],\n setState = _useState2[1];\n\n var handleOrientationChange = React.useCallback(function () {\n var orientation = window.innerWidth > window.innerHeight ? 90 : 0;\n var next = {\n isPortrait: orientation === 0,\n isLandscape: orientation === 90,\n orientation: orientation === 0 ? 'portrait' : 'landscape'\n };\n state.orientation !== next.orientation && setState(next);\n }, [state.orientation]);\n React.useEffect(function () {\n if ((typeof window === \"undefined\" ? \"undefined\" : _typeof(window)) !== undefined && isMobile) {\n handleOrientationChange();\n window.addEventListener(\"load\", handleOrientationChange, false);\n window.addEventListener(\"resize\", handleOrientationChange, false);\n }\n\n return function () {\n window.removeEventListener(\"resize\", handleOrientationChange, false);\n window.removeEventListener(\"load\", handleOrientationChange, false);\n };\n }, [handleOrientationChange]);\n return state;\n}\n\nfunction useDeviceData(userAgent) {\n var hookUserAgent = userAgent ? userAgent : window.navigator.userAgent;\n return parseUserAgent(hookUserAgent);\n}\n\nfunction useDeviceSelectors(userAgent) {\n var hookUserAgent = userAgent ? userAgent : window.navigator.userAgent;\n var deviceData = useDeviceData(hookUserAgent);\n var selectors = buildSelectorsObject(deviceData);\n return [selectors, deviceData];\n}\n\nexports.AndroidView = AndroidView;\nexports.BrowserTypes = BrowserTypes;\nexports.BrowserView = BrowserView;\nexports.ConsoleView = ConsoleView;\nexports.CustomView = CustomView;\nexports.IEView = IEView;\nexports.IOSView = IOSView;\nexports.MobileOnlyView = MobileOnlyView;\nexports.MobileView = MobileView;\nexports.OsTypes = OsTypes;\nexports.SmartTVView = SmartTVView;\nexports.TabletView = TabletView;\nexports.WearableView = WearableView;\nexports.WinPhoneView = WinPhoneView;\nexports.browserName = browserName;\nexports.browserVersion = browserVersion;\nexports.deviceDetect = deviceDetect;\nexports.deviceType = deviceType;\nexports.engineName = engineName;\nexports.engineVersion = engineVersion;\nexports.fullBrowserVersion = fullBrowserVersion;\nexports.getSelectorsByUserAgent = getSelectorsByUserAgent;\nexports.getUA = getUA;\nexports.isAndroid = isAndroid;\nexports.isBrowser = isBrowser;\nexports.isChrome = isChrome;\nexports.isChromium = isChromium;\nexports.isConsole = isConsole;\nexports.isDesktop = isDesktop;\nexports.isEdge = isEdge;\nexports.isEdgeChromium = isEdgeChromium;\nexports.isElectron = isElectron;\nexports.isEmbedded = isEmbedded;\nexports.isFirefox = isFirefox;\nexports.isIE = isIE;\nexports.isIOS = isIOS;\nexports.isIOS13 = isIOS13;\nexports.isIPad13 = isIPad13;\nexports.isIPhone13 = isIPhone13;\nexports.isIPod13 = isIPod13;\nexports.isLegacyEdge = isLegacyEdge;\nexports.isMIUI = isMIUI;\nexports.isMacOs = isMacOs;\nexports.isMobile = isMobile;\nexports.isMobileOnly = isMobileOnly;\nexports.isMobileSafari = isMobileSafari;\nexports.isOpera = isOpera;\nexports.isSafari = isSafari;\nexports.isSamsungBrowser = isSamsungBrowser;\nexports.isSmartTV = isSmartTV;\nexports.isTablet = isTablet;\nexports.isWearable = isWearable;\nexports.isWinPhone = isWinPhone;\nexports.isWindows = isWindows;\nexports.isYandex = isYandex;\nexports.mobileModel = mobileModel;\nexports.mobileVendor = mobileVendor;\nexports.osName = osName;\nexports.osVersion = osVersion;\nexports.parseUserAgent = parseUserAgent;\nexports.setUserAgent = setUserAgent;\nexports.useDeviceData = useDeviceData;\nexports.useDeviceSelectors = useDeviceSelectors;\nexports.useMobileOrientation = useMobileOrientation;\nexports.withOrientationChange = withOrientationChange;\n","import React, { useEffect, useState } from \"react\"\nimport { Link } from \"gatsby\"\nimport { StaticImage } from \"gatsby-plugin-image\"\nimport useScrollPosition from \"../../utilities/use-scroll-position\"\nimport NavItems from \"./nav-items\"\nimport { useLocation } from \"@reach/router\"\n\nconst Menu = ({\n onDownloadClick,\n hideOnScroll = true,\n light_version = false,\n}) => {\n const { scrollY } = useScrollPosition()\n const [isScrolled, setIsScrolled] = useState(false)\n const { pathname } = useLocation()\n const [topButton, setTopbutton] = useState(\n \n )\n const excludedTopButton = [\"/\", \"/free-coins\", \"/free-coins/\"];\n\n useEffect(() => {\n setIsScrolled(hideOnScroll && scrollY >= 50);\n }, [scrollY])\n\n useEffect(() => {\n if (pathname === \"/mobile-slots\") {\n setTopbutton(\n \n )\n } else {\n setTopbutton(\n \n )\n }\n }, [])\n\n return (\n
\n
\n
\n
\n {light_version ? (\n
\n
\n \n
\n
\n BLOG\n
\n
\n ) : (\n
\n \n \n \n
\n \n BLOG\n \n
\n
\n )}\n {!isScrolled && !light_version && (\n \n )}\n
\n {topButton && (\n pathname === item)\n ? \"cta cursor-pointer\"\n : `cta cursor-pointer relative transition-all ease-in-out duration-500 ${\n isScrolled ? \"top-0\" : \"top-[-150px]\"\n }`\n }\n onClick={onDownloadClick}\n >\n {topButton}\n
\n )}\n
\n
\n \n )\n}\n\nexport default Menu\n","import camelCase from \"camelcase\"\nimport type { IGatsbyImageData } from \"./index\"\n\nconst DEFAULT_PIXEL_DENSITIES = [0.25, 0.5, 1, 2]\nexport const DEFAULT_BREAKPOINTS = [750, 1080, 1366, 1920]\nexport const EVERY_BREAKPOINT = [\n 320, 654, 768, 1024, 1366, 1600, 1920, 2048, 2560, 3440, 3840, 4096,\n]\nconst DEFAULT_FLUID_WIDTH = 800\nconst DEFAULT_FIXED_WIDTH = 800\nconst DEFAULT_ASPECT_RATIO = 4 / 3\n\nexport type Fit = \"cover\" | \"fill\" | \"inside\" | \"outside\" | \"contain\"\n\nexport type Layout = \"fixed\" | \"fullWidth\" | \"constrained\"\nexport type ImageFormat = \"jpg\" | \"png\" | \"webp\" | \"avif\" | \"auto\" | \"\"\n\n/**\n * The minimal required reporter, as we don't want to import it from gatsby-cli\n */\nexport interface IReporter {\n warn(message: string): void\n}\n\nexport interface ISharpGatsbyImageArgs {\n layout?: Layout\n formats?: Array\n placeholder?: \"tracedSVG\" | \"dominantColor\" | \"blurred\" | \"none\"\n tracedSVGOptions?: Record\n width?: number\n height?: number\n aspectRatio?: number\n sizes?: string\n quality?: number\n transformOptions?: {\n fit?: Fit\n cropFocus?: number | string\n duotone?: {\n highlight: string\n shadow: string\n opacity?: number\n }\n grayscale?: boolean\n rotate?: number\n trim?: number\n }\n jpgOptions?: Record\n pngOptions?: Record\n webpOptions?: Record\n avifOptions?: Record\n blurredOptions?: { width?: number; toFormat?: ImageFormat }\n breakpoints?: Array\n outputPixelDensities?: Array\n backgroundColor?: string\n}\n\nexport interface IImageSizeArgs {\n width?: number\n height?: number\n layout?: Layout\n filename: string\n outputPixelDensities?: Array\n breakpoints?: Array\n fit?: Fit\n reporter?: IReporter\n sourceMetadata: { width: number; height: number }\n}\n\nexport interface IImageSizes {\n sizes: Array\n presentationWidth: number\n presentationHeight: number\n aspectRatio: number\n unscaledWidth: number\n}\n\nexport interface IImage {\n src: string\n width: number\n height: number\n format: ImageFormat\n}\n\nexport interface IGatsbyImageHelperArgs {\n pluginName: string\n generateImageSource: (\n filename: string,\n width: number,\n height: number,\n format: ImageFormat,\n fit?: Fit,\n options?: Record\n ) => IImage\n layout?: Layout\n formats?: Array\n filename: string\n placeholderURL?: string\n width?: number\n height?: number\n sizes?: string\n reporter?: IReporter\n sourceMetadata?: { width: number; height: number; format: ImageFormat }\n fit?: Fit\n options?: Record\n breakpoints?: Array\n backgroundColor?: string\n aspectRatio?: number\n}\n\nconst warn = (message: string): void => console.warn(message)\n\nconst sortNumeric = (a: number, b: number): number => a - b\n\nexport const getSizes = (width: number, layout: Layout): string | undefined => {\n switch (layout) {\n // If screen is wider than the max size, image width is the max size,\n // otherwise it's the width of the screen\n case `constrained`:\n return `(min-width: ${width}px) ${width}px, 100vw`\n\n // Image is always the same width, whatever the size of the screen\n case `fixed`:\n return `${width}px`\n\n // Image is always the width of the screen\n case `fullWidth`:\n return `100vw`\n\n default:\n return undefined\n }\n}\n\nexport const getSrcSet = (images: Array): string =>\n images.map(image => `${image.src} ${image.width}w`).join(`,\\n`)\n\nexport function formatFromFilename(filename: string): ImageFormat | undefined {\n const dot = filename.lastIndexOf(`.`)\n if (dot !== -1) {\n const ext = filename.slice(dot + 1)\n if (ext === `jpeg`) {\n return `jpg`\n }\n if (ext.length === 3 || ext.length === 4) {\n return ext as ImageFormat\n }\n }\n return undefined\n}\n\nexport function setDefaultDimensions(\n args: IGatsbyImageHelperArgs\n): IGatsbyImageHelperArgs {\n let {\n layout = `constrained`,\n width,\n height,\n sourceMetadata,\n breakpoints,\n aspectRatio,\n formats = [`auto`, `webp`],\n } = args\n formats = formats.map(format => format.toLowerCase() as ImageFormat)\n layout = camelCase(layout) as Layout\n\n if (width && height) {\n return { ...args, formats, layout, aspectRatio: width / height }\n }\n if (sourceMetadata.width && sourceMetadata.height && !aspectRatio) {\n aspectRatio = sourceMetadata.width / sourceMetadata.height\n }\n\n if (layout === `fullWidth`) {\n width = width || sourceMetadata.width || breakpoints[breakpoints.length - 1]\n height = height || Math.round(width / (aspectRatio || DEFAULT_ASPECT_RATIO))\n } else {\n if (!width) {\n if (height && aspectRatio) {\n width = height * aspectRatio\n } else if (sourceMetadata.width) {\n width = sourceMetadata.width\n } else if (height) {\n width = Math.round(height / DEFAULT_ASPECT_RATIO)\n } else {\n width = DEFAULT_FIXED_WIDTH\n }\n }\n\n if (aspectRatio && !height) {\n height = Math.round(width / aspectRatio)\n } else if (!aspectRatio) {\n aspectRatio = width / height\n }\n }\n return { ...args, width, height, aspectRatio, layout, formats }\n}\n\n/**\n * Use this for getting an image for the blurred placeholder. This ensures the\n * aspect ratio and crop match the main image\n */\nexport function getLowResolutionImageURL(\n args: IGatsbyImageHelperArgs,\n width = 20\n): string {\n args = setDefaultDimensions(args)\n const { generateImageSource, filename, aspectRatio } = args\n return generateImageSource(\n filename,\n width,\n Math.round(width / aspectRatio),\n args.sourceMetadata.format || `jpg`,\n args.fit,\n args.options\n )?.src\n}\n\nexport function generateImageData(\n args: IGatsbyImageHelperArgs\n): IGatsbyImageData {\n args = setDefaultDimensions(args)\n\n let {\n pluginName,\n sourceMetadata,\n generateImageSource,\n layout,\n fit,\n options,\n width,\n height,\n filename,\n reporter = { warn },\n backgroundColor,\n placeholderURL,\n } = args\n\n if (!pluginName) {\n reporter.warn(\n `[gatsby-plugin-image] \"generateImageData\" was not passed a plugin name`\n )\n }\n\n if (typeof generateImageSource !== `function`) {\n throw new Error(`generateImageSource must be a function`)\n }\n\n if (!sourceMetadata || (!sourceMetadata.width && !sourceMetadata.height)) {\n // No metadata means we let the CDN handle max size etc, aspect ratio etc\n sourceMetadata = {\n width,\n height,\n format: sourceMetadata?.format || formatFromFilename(filename) || `auto`,\n }\n } else if (!sourceMetadata.format) {\n sourceMetadata.format = formatFromFilename(filename)\n }\n\n const formats = new Set(args.formats)\n\n if (formats.size === 0 || formats.has(`auto`) || formats.has(``)) {\n formats.delete(`auto`)\n formats.delete(``)\n formats.add(sourceMetadata.format)\n }\n\n if (formats.has(`jpg`) && formats.has(`png`)) {\n reporter.warn(\n `[${pluginName}] Specifying both 'jpg' and 'png' formats is not supported. Using 'auto' instead`\n )\n if (sourceMetadata.format === `jpg`) {\n formats.delete(`png`)\n } else {\n formats.delete(`jpg`)\n }\n }\n\n const imageSizes = calculateImageSizes({ ...args, sourceMetadata })\n\n const result: IGatsbyImageData[\"images\"] = {\n sources: [],\n }\n\n let sizes = args.sizes\n if (!sizes) {\n sizes = getSizes(imageSizes.presentationWidth, layout)\n }\n\n formats.forEach(format => {\n const images = imageSizes.sizes\n .map(size => {\n const imageSrc = generateImageSource(\n filename,\n size,\n Math.round(size / imageSizes.aspectRatio),\n format,\n fit,\n options\n )\n if (\n !imageSrc?.width ||\n !imageSrc.height ||\n !imageSrc.src ||\n !imageSrc.format\n ) {\n reporter.warn(\n `[${pluginName}] The resolver for image ${filename} returned an invalid value.`\n )\n return undefined\n }\n return imageSrc\n })\n .filter(Boolean)\n\n if (format === `jpg` || format === `png` || format === `auto`) {\n const unscaled =\n images.find(img => img.width === imageSizes.unscaledWidth) || images[0]\n\n if (unscaled) {\n result.fallback = {\n src: unscaled.src,\n srcSet: getSrcSet(images),\n sizes,\n }\n }\n } else {\n result.sources?.push({\n srcSet: getSrcSet(images),\n sizes,\n type: `image/${format}`,\n })\n }\n })\n\n const imageProps: Partial = {\n images: result,\n layout,\n backgroundColor,\n }\n\n if (placeholderURL) {\n imageProps.placeholder = { fallback: placeholderURL }\n }\n\n switch (layout) {\n case `fixed`:\n imageProps.width = imageSizes.presentationWidth\n imageProps.height = imageSizes.presentationHeight\n break\n\n case `fullWidth`:\n imageProps.width = 1\n imageProps.height = 1 / imageSizes.aspectRatio\n break\n\n case `constrained`:\n imageProps.width = args.width || imageSizes.presentationWidth || 1\n imageProps.height = (imageProps.width || 1) / imageSizes.aspectRatio\n }\n\n return imageProps as IGatsbyImageData\n}\n\nconst dedupeAndSortDensities = (values: Array): Array =>\n Array.from(new Set([1, ...values])).sort(sortNumeric)\n\nexport function calculateImageSizes(args: IImageSizeArgs): IImageSizes {\n const {\n width,\n height,\n filename,\n layout = `constrained`,\n sourceMetadata: imgDimensions,\n reporter = { warn },\n breakpoints = DEFAULT_BREAKPOINTS,\n } = args\n\n // check that all dimensions provided are positive\n const userDimensions = { width, height }\n const erroneousUserDimensions = Object.entries(userDimensions).filter(\n ([_, size]) => typeof size === `number` && size < 1\n )\n if (erroneousUserDimensions.length) {\n throw new Error(\n `Specified dimensions for images must be positive numbers (> 0). Problem dimensions you have are ${erroneousUserDimensions\n .map(dim => dim.join(`: `))\n .join(`, `)}`\n )\n }\n\n if (layout === `fixed`) {\n return fixedImageSizes(args)\n } else if (layout === `constrained`) {\n return responsiveImageSizes(args)\n } else if (layout === `fullWidth`) {\n return responsiveImageSizes({ breakpoints, ...args })\n } else {\n reporter.warn(\n `No valid layout was provided for the image at ${filename}. Valid image layouts are fixed, fullWidth, and constrained. Found ${layout}`\n )\n return {\n sizes: [imgDimensions.width],\n presentationWidth: imgDimensions.width,\n presentationHeight: imgDimensions.height,\n aspectRatio: imgDimensions.width / imgDimensions.height,\n unscaledWidth: imgDimensions.width,\n }\n }\n}\nexport function fixedImageSizes({\n filename,\n sourceMetadata: imgDimensions,\n width,\n height,\n fit = `cover`,\n outputPixelDensities = DEFAULT_PIXEL_DENSITIES,\n reporter = { warn },\n}: IImageSizeArgs): IImageSizes {\n let aspectRatio = imgDimensions.width / imgDimensions.height\n // Sort, dedupe and ensure there's a 1\n const densities = dedupeAndSortDensities(outputPixelDensities)\n\n // If both are provided then we need to check the fit\n if (width && height) {\n const calculated = getDimensionsAndAspectRatio(imgDimensions, {\n width,\n height,\n fit,\n })\n width = calculated.width\n height = calculated.height\n aspectRatio = calculated.aspectRatio\n }\n\n if (!width) {\n if (!height) {\n width = DEFAULT_FIXED_WIDTH\n } else {\n width = Math.round(height * aspectRatio)\n }\n } else if (!height) {\n height = Math.round(width / aspectRatio)\n }\n\n const originalWidth = width // will use this for presentationWidth, don't want to lose it\n const isTopSizeOverriden =\n imgDimensions.width < width || imgDimensions.height < (height as number)\n\n // If the image is smaller than requested, warn the user that it's being processed as such\n // print out this message with the necessary information before we overwrite it for sizing\n if (isTopSizeOverriden) {\n const fixedDimension = imgDimensions.width < width ? `width` : `height`\n reporter.warn(`\nThe requested ${fixedDimension} \"${\n fixedDimension === `width` ? width : height\n }px\" for the image ${filename} was larger than the actual image ${fixedDimension} of ${\n imgDimensions[fixedDimension]\n }px. If possible, replace the current image with a larger one.`)\n\n if (fixedDimension === `width`) {\n width = imgDimensions.width\n height = Math.round(width / aspectRatio)\n } else {\n height = imgDimensions.height\n width = height * aspectRatio\n }\n }\n\n const sizes = densities\n .filter(size => size >= 1) // remove smaller densities because fixed images don't need them\n .map(density => Math.round(density * (width as number)))\n .filter(size => size <= imgDimensions.width)\n\n return {\n sizes,\n aspectRatio,\n presentationWidth: originalWidth,\n presentationHeight: Math.round(originalWidth / aspectRatio),\n unscaledWidth: width,\n }\n}\n\nexport function responsiveImageSizes({\n sourceMetadata: imgDimensions,\n width,\n height,\n fit = `cover`,\n outputPixelDensities = DEFAULT_PIXEL_DENSITIES,\n breakpoints,\n layout,\n}: IImageSizeArgs): IImageSizes {\n let sizes\n let aspectRatio = imgDimensions.width / imgDimensions.height\n // Sort, dedupe and ensure there's a 1\n const densities = dedupeAndSortDensities(outputPixelDensities)\n\n // If both are provided then we need to check the fit\n if (width && height) {\n const calculated = getDimensionsAndAspectRatio(imgDimensions, {\n width,\n height,\n fit,\n })\n width = calculated.width\n height = calculated.height\n aspectRatio = calculated.aspectRatio\n }\n\n // Case 1: width of height were passed in, make sure it isn't larger than the actual image\n width = width && Math.min(width, imgDimensions.width)\n height = height && Math.min(height, imgDimensions.height)\n\n // Case 2: neither width or height were passed in, use default size\n if (!width && !height) {\n width = Math.min(DEFAULT_FLUID_WIDTH, imgDimensions.width)\n height = width / aspectRatio\n }\n\n // if it still hasn't been found, calculate width from the derived height.\n // TS isn't smart enough to realise the type for height has been narrowed here\n if (!width) {\n width = (height as number) * aspectRatio\n }\n\n const originalWidth = width\n const isTopSizeOverriden =\n imgDimensions.width < width || imgDimensions.height < (height as number)\n if (isTopSizeOverriden) {\n width = imgDimensions.width\n height = imgDimensions.height\n }\n\n width = Math.round(width)\n\n if (breakpoints?.length > 0) {\n sizes = breakpoints.filter(size => size <= imgDimensions.width)\n\n // If a larger breakpoint has been filtered-out, add the actual image width instead\n if (\n sizes.length < breakpoints.length &&\n !sizes.includes(imgDimensions.width)\n ) {\n sizes.push(imgDimensions.width)\n }\n } else {\n sizes = densities.map(density => Math.round(density * (width as number)))\n sizes = sizes.filter(size => size <= imgDimensions.width)\n }\n\n // ensure that the size passed in is included in the final output\n if (layout === `constrained` && !sizes.includes(width)) {\n sizes.push(width)\n }\n sizes = sizes.sort(sortNumeric)\n return {\n sizes,\n aspectRatio,\n presentationWidth: originalWidth,\n presentationHeight: Math.round(originalWidth / aspectRatio),\n unscaledWidth: width,\n }\n}\n\nexport function getDimensionsAndAspectRatio(\n dimensions,\n options\n): { width: number; height: number; aspectRatio: number } {\n // Calculate the eventual width/height of the image.\n const imageAspectRatio = dimensions.width / dimensions.height\n\n let width = options.width\n let height = options.height\n\n switch (options.fit) {\n case `fill`: {\n width = options.width ? options.width : dimensions.width\n height = options.height ? options.height : dimensions.height\n break\n }\n case `inside`: {\n const widthOption = options.width\n ? options.width\n : Number.MAX_SAFE_INTEGER\n const heightOption = options.height\n ? options.height\n : Number.MAX_SAFE_INTEGER\n\n width = Math.min(widthOption, Math.round(heightOption * imageAspectRatio))\n height = Math.min(\n heightOption,\n Math.round(widthOption / imageAspectRatio)\n )\n break\n }\n case `outside`: {\n const widthOption = options.width ? options.width : 0\n const heightOption = options.height ? options.height : 0\n\n width = Math.max(widthOption, Math.round(heightOption * imageAspectRatio))\n height = Math.max(\n heightOption,\n Math.round(widthOption / imageAspectRatio)\n )\n break\n }\n\n default: {\n if (options.width && !options.height) {\n width = options.width\n height = Math.round(options.width / imageAspectRatio)\n }\n\n if (options.height && !options.width) {\n width = Math.round(options.height * imageAspectRatio)\n height = options.height\n }\n }\n }\n\n return {\n width,\n height,\n aspectRatio: width / height,\n }\n}\n","/* global GATSBY___IMAGE */\nimport { generateImageData, EVERY_BREAKPOINT } from \"../image-utils\"\nimport type { CSSProperties, HTMLAttributes, ImgHTMLAttributes } from \"react\"\nimport type { Node } from \"gatsby\"\nimport type { PlaceholderProps } from \"./placeholder\"\nimport type { MainImageProps } from \"./main-image\"\nimport type { IGatsbyImageData } from \"./gatsby-image.browser\"\nimport type {\n IGatsbyImageHelperArgs,\n Layout,\n IImage,\n ImageFormat,\n} from \"../image-utils\"\n\n// Native lazy-loading support: https://addyosmani.com/blog/lazy-loading/\nexport const hasNativeLazyLoadSupport = (): boolean =>\n typeof HTMLImageElement !== `undefined` &&\n `loading` in HTMLImageElement.prototype\n\nexport function gatsbyImageIsInstalled(): boolean {\n return typeof GATSBY___IMAGE !== `undefined` && GATSBY___IMAGE\n}\n\nexport type IGatsbyImageDataParent = T & {\n gatsbyImageData: IGatsbyImageData\n}\nexport type IGatsbyImageParent = T & {\n gatsbyImage: IGatsbyImageData\n}\nexport type FileNode = Partial & {\n childImageSharp?: IGatsbyImageDataParent>\n}\n\nconst isGatsbyImageData = (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n node: IGatsbyImageData | any\n): node is IGatsbyImageData =>\n // 🦆 check for a deep prop to be sure this is a valid gatsbyImageData object\n Boolean(node?.images?.fallback?.src)\n\nconst isGatsbyImageDataParent = (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n node: IGatsbyImageDataParent | any\n): node is IGatsbyImageDataParent => Boolean(node?.gatsbyImageData)\n\nconst isGatsbyImageParent = (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n node: IGatsbyImageParent | any\n): node is IGatsbyImageParent => Boolean(node?.gatsbyImage)\n\nexport type ImageDataLike =\n | FileNode\n | IGatsbyImageDataParent\n | IGatsbyImageParent\n | IGatsbyImageData\n\nexport const getImage = (\n node: ImageDataLike | null\n): IGatsbyImageData | undefined => {\n // This checks both for gatsbyImageData and gatsbyImage\n if (isGatsbyImageData(node)) {\n return node\n }\n // gatsbyImageData GraphQL field\n if (isGatsbyImageDataParent(node)) {\n return node.gatsbyImageData\n }\n // gatsbyImage GraphQL field for Gatsby's Image CDN service\n if (isGatsbyImageParent(node)) {\n return node.gatsbyImage\n }\n return node?.childImageSharp?.gatsbyImageData\n}\n\nexport const getSrc = (node: ImageDataLike): string | undefined =>\n getImage(node)?.images?.fallback?.src\n\nexport const getSrcSet = (node: ImageDataLike): string | undefined =>\n getImage(node)?.images?.fallback?.srcSet\n\nexport function getWrapperProps(\n width: number,\n height: number,\n layout: Layout\n): Pick, \"className\" | \"style\"> & {\n \"data-gatsby-image-wrapper\": string\n} {\n const wrapperStyle: CSSProperties = {}\n\n let className = `gatsby-image-wrapper`\n\n // If the plugin isn't installed we need to apply the styles inline\n if (!gatsbyImageIsInstalled()) {\n wrapperStyle.position = `relative`\n wrapperStyle.overflow = `hidden`\n }\n\n if (layout === `fixed`) {\n wrapperStyle.width = width\n wrapperStyle.height = height\n } else if (layout === `constrained`) {\n if (!gatsbyImageIsInstalled()) {\n wrapperStyle.display = `inline-block`\n wrapperStyle.verticalAlign = `top`\n }\n className = `gatsby-image-wrapper gatsby-image-wrapper-constrained`\n }\n\n return {\n className,\n \"data-gatsby-image-wrapper\": ``,\n style: wrapperStyle,\n }\n}\n\nexport interface IUrlBuilderArgs {\n width: number\n height: number\n baseUrl: string\n format: ImageFormat\n options: OptionsType\n}\nexport interface IGetImageDataArgs> {\n baseUrl: string\n /**\n * For constrained and fixed images, the size of the image element\n */\n width?: number\n height?: number\n /**\n * If available, pass the source image width and height\n */\n sourceWidth?: number\n sourceHeight?: number\n /**\n * If only one dimension is passed, then this will be used to calculate the other.\n */\n aspectRatio?: number\n layout?: Layout\n /**\n * Returns a URL based on the passed arguments. Should be a pure function\n */\n urlBuilder: (args: IUrlBuilderArgs) => string\n\n /**\n * Should be a data URI\n */\n placeholderURL?: string\n backgroundColor?: string\n /**\n * Used in error messages etc\n */\n pluginName?: string\n\n /**\n * If you do not support auto-format, pass an array of image types here\n */\n formats?: Array\n\n breakpoints?: Array\n\n /**\n * Passed to the urlBuilder function\n */\n options?: OptionsType\n}\n\n/**\n * Use this hook to generate gatsby-plugin-image data in the browser.\n */\nexport function getImageData({\n baseUrl,\n urlBuilder,\n sourceWidth,\n sourceHeight,\n pluginName = `getImageData`,\n formats = [`auto`],\n breakpoints,\n options,\n ...props\n}: IGetImageDataArgs): IGatsbyImageData {\n if (\n !breakpoints?.length &&\n (props.layout === `fullWidth` || (props.layout as string) === `FULL_WIDTH`)\n ) {\n breakpoints = EVERY_BREAKPOINT\n }\n const generateImageSource = (\n baseUrl: string,\n width: number,\n height?: number,\n format?: ImageFormat\n ): IImage => {\n return {\n width,\n height,\n format,\n src: urlBuilder({ baseUrl, width, height, options, format }),\n }\n }\n\n const sourceMetadata: IGatsbyImageHelperArgs[\"sourceMetadata\"] = {\n width: sourceWidth,\n height: sourceHeight,\n format: `auto`,\n }\n\n const args: IGatsbyImageHelperArgs = {\n ...props,\n pluginName,\n generateImageSource,\n filename: baseUrl,\n formats,\n breakpoints,\n sourceMetadata,\n }\n return generateImageData(args)\n}\n\nexport function getMainProps(\n isLoading: boolean,\n isLoaded: boolean,\n images: IGatsbyImageData[\"images\"],\n loading?: \"eager\" | \"lazy\",\n style: CSSProperties = {}\n): Partial {\n // fallback when it's not configured in gatsby-config.\n if (!gatsbyImageIsInstalled()) {\n style = {\n height: `100%`,\n left: 0,\n position: `absolute`,\n top: 0,\n transform: `translateZ(0)`,\n transition: `opacity 250ms linear`,\n width: `100%`,\n willChange: `opacity`,\n ...style,\n }\n }\n\n const result = {\n ...images,\n loading,\n shouldLoad: isLoading,\n \"data-main-image\": ``,\n style: {\n ...style,\n opacity: isLoaded ? 1 : 0,\n },\n }\n\n return result\n}\n\nexport type PlaceholderImageAttrs = ImgHTMLAttributes &\n Pick & {\n \"data-placeholder-image\"?: string\n }\n\nexport function getPlaceholderProps(\n placeholder: PlaceholderImageAttrs | undefined,\n isLoaded: boolean,\n layout: Layout,\n width?: number,\n height?: number,\n backgroundColor?: string,\n objectFit?: CSSProperties[\"objectFit\"],\n objectPosition?: CSSProperties[\"objectPosition\"]\n): PlaceholderImageAttrs {\n const wrapperStyle: CSSProperties = {}\n\n if (backgroundColor) {\n wrapperStyle.backgroundColor = backgroundColor\n\n if (layout === `fixed`) {\n wrapperStyle.width = width\n wrapperStyle.height = height\n wrapperStyle.backgroundColor = backgroundColor\n wrapperStyle.position = `relative`\n } else if (layout === `constrained`) {\n wrapperStyle.position = `absolute`\n wrapperStyle.top = 0\n wrapperStyle.left = 0\n wrapperStyle.bottom = 0\n wrapperStyle.right = 0\n } else if (layout === `fullWidth`) {\n wrapperStyle.position = `absolute`\n wrapperStyle.top = 0\n wrapperStyle.left = 0\n wrapperStyle.bottom = 0\n wrapperStyle.right = 0\n }\n }\n\n if (objectFit) {\n wrapperStyle.objectFit = objectFit\n }\n\n if (objectPosition) {\n wrapperStyle.objectPosition = objectPosition\n }\n const result: PlaceholderImageAttrs = {\n ...placeholder,\n \"aria-hidden\": true,\n \"data-placeholder-image\": ``,\n style: {\n opacity: isLoaded ? 0 : 1,\n transition: `opacity 500ms linear`,\n ...wrapperStyle,\n },\n }\n\n // fallback when it's not configured in gatsby-config.\n if (!gatsbyImageIsInstalled()) {\n result.style = {\n height: `100%`,\n left: 0,\n position: `absolute`,\n top: 0,\n width: `100%`,\n }\n }\n\n return result\n}\n\nexport interface IArtDirectedImage {\n media: string\n image: IGatsbyImageData\n}\n\n/**\n * Generate a Gatsby image data object with multiple, art-directed images that display at different\n * resolutions.\n *\n * @param defaultImage The image displayed when no media query matches.\n * It is also used for all other settings applied to the image, such as width, height and layout.\n * You should pass a className to the component with media queries to adjust the size of the container,\n * as this cannot be adjusted automatically.\n * @param artDirected Array of objects which each contains a `media` string which is a media query\n * such as `(min-width: 320px)`, and the image object to use when that query matches.\n */\nexport function withArtDirection(\n defaultImage: IGatsbyImageData,\n artDirected: Array\n): IGatsbyImageData {\n const { images, placeholder, ...props } = defaultImage\n const output: IGatsbyImageData = {\n ...props,\n images: {\n ...images,\n sources: [],\n },\n placeholder: placeholder && {\n ...placeholder,\n sources: [],\n },\n }\n\n artDirected.forEach(({ media, image }) => {\n if (!media) {\n if (process.env.NODE_ENV === `development`) {\n console.warn(\n \"[gatsby-plugin-image] All art-directed images passed to must have a value set for `media`. Skipping.\"\n )\n }\n return\n }\n\n if (\n image.layout !== defaultImage.layout &&\n process.env.NODE_ENV === `development`\n ) {\n console.warn(\n `[gatsby-plugin-image] Mismatched image layout: expected \"${defaultImage.layout}\" but received \"${image.layout}\". All art-directed images use the same layout as the default image`\n )\n }\n\n output.images.sources.push(\n ...image.images.sources.map(source => {\n return { ...source, media }\n }),\n {\n media,\n srcSet: image.images.fallback.srcSet,\n }\n )\n\n if (!output.placeholder) {\n return\n }\n\n output.placeholder.sources.push({\n media,\n srcSet: image.placeholder.fallback,\n })\n })\n output.images.sources.push(...images.sources)\n if (placeholder?.sources) {\n output.placeholder?.sources.push(...placeholder.sources)\n }\n return output\n}\n","import React, { Fragment, FunctionComponent } from \"react\"\nimport terserMacro from \"../../macros/terser.macro\"\nimport { Layout } from \"../image-utils\"\n\nexport interface ILayoutWrapperProps {\n layout: Layout\n width: number\n height: number\n}\n\nconst NativeScriptLoading: FunctionComponent = () => (\n \n)\n\nexport function getSizer(\n layout: Layout,\n width: number,\n height: number\n): string {\n let sizer = ``\n if (layout === `fullWidth`) {\n sizer = `
`\n }\n\n if (layout === `constrained`) {\n sizer = `
\"\"
`\n }\n\n return sizer\n}\n\nconst Sizer: FunctionComponent = function Sizer({\n layout,\n width,\n height,\n}) {\n if (layout === `fullWidth`) {\n return (\n
\n )\n }\n\n if (layout === `constrained`) {\n return (\n
\n \n
\n )\n }\n\n return null\n}\n\nexport const LayoutWrapper: FunctionComponent =\n function LayoutWrapper({ children, ...props }) {\n return (\n \n \n {children}\n\n {SERVER ? : null}\n \n )\n }\n","import React, { FunctionComponent, ImgHTMLAttributes } from \"react\"\nimport * as PropTypes from \"prop-types\"\n\nexport interface IResponsiveImageProps {\n sizes?: string\n srcSet: string\n}\n\nexport type SourceProps = IResponsiveImageProps &\n (\n | {\n media: string\n type?: string\n }\n | {\n media?: string\n type: string\n }\n )\n\ntype FallbackProps = { src: string } & Partial\n\ntype ImageProps = ImgHTMLAttributes & {\n src: string\n alt: string\n shouldLoad: boolean\n}\n\nexport type PictureProps = ImgHTMLAttributes & {\n fallback?: FallbackProps\n sources?: Array\n alt: string\n shouldLoad?: boolean\n}\n\nconst Image: FunctionComponent = function Image({\n src,\n srcSet,\n loading,\n alt = ``,\n shouldLoad,\n ...props\n}) {\n return (\n \n )\n}\n\nexport const Picture: React.FC = function Picture({\n fallback,\n sources = [],\n shouldLoad = true,\n ...props\n}) {\n const sizes = props.sizes || fallback?.sizes\n const fallbackImage = (\n \n )\n\n if (!sources.length) {\n return fallbackImage\n }\n\n return (\n \n {sources.map(({ media, srcSet, type }) => (\n \n ))}\n {fallbackImage}\n \n )\n}\n\nImage.propTypes = {\n src: PropTypes.string.isRequired,\n alt: PropTypes.string.isRequired,\n sizes: PropTypes.string,\n srcSet: PropTypes.string,\n shouldLoad: PropTypes.bool,\n}\n\nPicture.displayName = `Picture`\nPicture.propTypes = {\n alt: PropTypes.string.isRequired,\n shouldLoad: PropTypes.bool,\n fallback: PropTypes.exact({\n src: PropTypes.string.isRequired,\n srcSet: PropTypes.string,\n sizes: PropTypes.string,\n }),\n sources: PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.exact({\n media: PropTypes.string.isRequired,\n type: PropTypes.string,\n sizes: PropTypes.string,\n srcSet: PropTypes.string.isRequired,\n }),\n PropTypes.exact({\n media: PropTypes.string,\n type: PropTypes.string.isRequired,\n sizes: PropTypes.string,\n srcSet: PropTypes.string.isRequired,\n }),\n ])\n ),\n}\n","import React, { FunctionComponent, ImgHTMLAttributes } from \"react\"\nimport * as PropTypes from \"prop-types\"\nimport { Picture, SourceProps } from \"./picture\"\n\nexport type PlaceholderProps = ImgHTMLAttributes & {\n fallback?: string\n sources?: Array\n}\n\nexport const Placeholder: FunctionComponent =\n function Placeholder({ fallback, ...props }) {\n if (fallback) {\n return (\n \n )\n } else {\n return
\n }\n }\n\nPlaceholder.displayName = `Placeholder`\nPlaceholder.propTypes = {\n fallback: PropTypes.string,\n sources: Picture.propTypes?.sources,\n alt: function (props, propName, componentName): Error | null {\n if (!props[propName]) {\n return null\n }\n\n return new Error(\n `Invalid prop \\`${propName}\\` supplied to \\`${componentName}\\`. Validation failed.`\n )\n },\n}\n","import React from \"react\"\nimport { Picture, PictureProps } from \"./picture\"\n\nexport type MainImageProps = PictureProps\n\nexport const MainImage: React.FC = function MainImage(props) {\n return (\n <>\n \n \n \n )\n}\n\nMainImage.displayName = `MainImage`\nMainImage.propTypes = Picture.propTypes\n","import React from \"react\"\nimport { getWrapperProps, getMainProps, getPlaceholderProps } from \"./hooks\"\nimport { Placeholder } from \"./placeholder\"\nimport { MainImage, MainImageProps } from \"./main-image\"\nimport { LayoutWrapper } from \"./layout-wrapper\"\nimport PropTypes from \"prop-types\"\nimport type { FunctionComponent, WeakValidationMap } from \"react\"\nimport type { GatsbyImageProps, IGatsbyImageData } from \"./gatsby-image.browser\"\n\nconst removeNewLines = (str: string): string => str.replace(/\\n/g, ``)\n\nexport const GatsbyImage: FunctionComponent =\n function GatsbyImage({\n as = `div`,\n className,\n class: preactClass,\n style,\n image,\n loading = `lazy`,\n imgClassName,\n imgStyle,\n backgroundColor,\n objectFit,\n objectPosition,\n ...props\n }) {\n if (!image) {\n console.warn(`[gatsby-plugin-image] Missing image prop`)\n return null\n }\n\n if (preactClass) {\n className = preactClass\n }\n\n imgStyle = {\n objectFit,\n objectPosition,\n backgroundColor,\n ...imgStyle,\n }\n\n const {\n width,\n height,\n layout,\n images,\n placeholder,\n backgroundColor: placeholderBackgroundColor,\n } = image\n\n const {\n style: wStyle,\n className: wClass,\n ...wrapperProps\n } = getWrapperProps(width, height, layout)\n\n const cleanedImages: IGatsbyImageData[\"images\"] = {\n fallback: undefined,\n sources: [],\n }\n if (images.fallback) {\n cleanedImages.fallback = {\n ...images.fallback,\n srcSet: images.fallback.srcSet\n ? removeNewLines(images.fallback.srcSet)\n : undefined,\n }\n }\n\n if (images.sources) {\n cleanedImages.sources = images.sources.map(source => {\n return {\n ...source,\n srcSet: removeNewLines(source.srcSet),\n }\n })\n }\n\n return React.createElement(\n as,\n {\n ...wrapperProps,\n style: {\n ...wStyle,\n ...style,\n backgroundColor,\n },\n className: `${wClass}${className ? ` ${className}` : ``}`,\n },\n \n \n\n )}\n // When eager is set we want to start the isLoading state on true (we want to load the img without react)\n {...getMainProps(\n loading === `eager`,\n false,\n cleanedImages,\n loading,\n imgStyle\n )}\n />\n \n )\n }\n\nexport const altValidator: PropTypes.Validator = (\n props: GatsbyImageProps,\n propName,\n componentName,\n ...rest\n): Error | undefined => {\n if (!props.alt && props.alt !== ``) {\n return new Error(\n `The \"alt\" prop is required in ${componentName}. If the image is purely presentational then pass an empty string: e.g. alt=\"\". Learn more: https://a11y-style-guide.com/style-guide/section-media.html`\n )\n }\n\n return PropTypes.string(props, propName, componentName, ...rest)\n}\n\nexport const propTypes = {\n image: PropTypes.object.isRequired,\n alt: altValidator,\n} as WeakValidationMap\n","import {\n createElement,\n memo,\n useMemo,\n useEffect,\n useLayoutEffect,\n useRef,\n} from \"react\"\nimport {\n getWrapperProps,\n gatsbyImageIsInstalled,\n hasNativeLazyLoadSupport,\n} from \"./hooks\"\nimport { getSizer } from \"./layout-wrapper\"\nimport { propTypes } from \"./gatsby-image.server\"\nimport type {\n FC,\n ElementType,\n FunctionComponent,\n ImgHTMLAttributes,\n CSSProperties,\n ReactEventHandler,\n} from \"react\"\nimport type { renderImageToString } from \"./lazy-hydrate\"\nimport type { PlaceholderProps } from \"./placeholder\"\nimport type { MainImageProps } from \"./main-image\"\nimport type { Layout } from \"../image-utils\"\n\nconst imageCache = new Set()\nlet renderImageToStringPromise\nlet renderImage: typeof renderImageToString | undefined\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface GatsbyImageProps\n extends Omit<\n ImgHTMLAttributes,\n \"placeholder\" | \"onLoad\" | \"src\" | \"srcSet\" | \"width\" | \"height\"\n > {\n alt: string\n as?: ElementType\n className?: string\n class?: string\n imgClassName?: string\n image: IGatsbyImageData\n imgStyle?: CSSProperties\n backgroundColor?: string\n objectFit?: CSSProperties[\"objectFit\"]\n objectPosition?: CSSProperties[\"objectPosition\"]\n onLoad?: (props: { wasCached: boolean }) => void\n onError?: ReactEventHandler\n onStartLoad?: (props: { wasCached: boolean }) => void\n}\n\nexport interface IGatsbyImageData {\n layout: Layout\n width: number\n height: number\n backgroundColor?: string\n images: Pick\n placeholder?: Pick\n}\n\nconst GatsbyImageHydrator: FC = function GatsbyImageHydrator({\n as = `div`,\n image,\n style,\n backgroundColor,\n className,\n class: preactClass,\n onStartLoad,\n onLoad,\n onError,\n ...props\n}) {\n const { width, height, layout } = image\n const {\n style: wStyle,\n className: wClass,\n ...wrapperProps\n } = getWrapperProps(width, height, layout)\n const root = useRef()\n const cacheKey = useMemo(() => JSON.stringify(image.images), [image.images])\n\n // Preact uses class instead of className so we need to check for both\n if (preactClass) {\n className = preactClass\n }\n\n const sizer = getSizer(layout, width, height)\n\n useEffect(() => {\n if (!renderImageToStringPromise) {\n renderImageToStringPromise = import(`./lazy-hydrate`).then(\n ({ renderImageToString, swapPlaceholderImage }) => {\n renderImage = renderImageToString\n\n return {\n renderImageToString,\n swapPlaceholderImage,\n }\n }\n )\n }\n\n // The plugin image component is a bit special where if it's server-side rendered, we add extra script tags to support lazy-loading without\n // In this case we stop hydration but fire the correct events.\n const ssrImage = root.current.querySelector(\n `[data-gatsby-image-ssr]`\n ) as HTMLImageElement\n if (ssrImage && hasNativeLazyLoadSupport()) {\n if (ssrImage.complete) {\n // Trigger onStartload and onLoad events\n onStartLoad?.({\n wasCached: true,\n })\n onLoad?.({\n wasCached: true,\n })\n\n // remove ssr key for state updates but add delay to not fight with native code snippt of gatsby-ssr\n setTimeout(() => {\n ssrImage.removeAttribute(`data-gatsby-image-ssr`)\n }, 0)\n } else {\n onStartLoad?.({\n wasCached: true,\n })\n\n ssrImage.addEventListener(`load`, function onLoadListener() {\n ssrImage.removeEventListener(`load`, onLoadListener)\n\n onLoad?.({\n wasCached: true,\n })\n // remove ssr key for state updates but add delay to not fight with native code snippt of gatsby-ssr\n setTimeout(() => {\n ssrImage.removeAttribute(`data-gatsby-image-ssr`)\n }, 0)\n })\n }\n\n imageCache.add(cacheKey)\n\n return\n }\n\n if (renderImage && imageCache.has(cacheKey)) {\n return\n }\n\n let animationFrame\n let cleanupCallback\n renderImageToStringPromise.then(\n ({ renderImageToString, swapPlaceholderImage }) => {\n if (!root.current) {\n return\n }\n\n root.current.innerHTML = renderImageToString({\n isLoading: true,\n isLoaded: imageCache.has(cacheKey),\n image,\n ...props,\n })\n\n if (!imageCache.has(cacheKey)) {\n animationFrame = requestAnimationFrame(() => {\n if (root.current) {\n cleanupCallback = swapPlaceholderImage(\n root.current,\n cacheKey,\n imageCache,\n style,\n onStartLoad,\n onLoad,\n onError\n )\n }\n })\n }\n }\n )\n\n // eslint-disable-next-line consistent-return\n return (): void => {\n if (animationFrame) {\n cancelAnimationFrame(animationFrame)\n }\n if (cleanupCallback) {\n cleanupCallback()\n }\n }\n }, [image])\n\n // useLayoutEffect is ran before React commits to the DOM. This allows us to make sure our HTML is using our cached image version\n useLayoutEffect(() => {\n if (imageCache.has(cacheKey) && renderImage) {\n root.current.innerHTML = renderImage({\n isLoading: imageCache.has(cacheKey),\n isLoaded: imageCache.has(cacheKey),\n image,\n ...props,\n })\n\n // Trigger onStartload and onLoad events\n onStartLoad?.({\n wasCached: true,\n })\n onLoad?.({\n wasCached: true,\n })\n }\n }, [image])\n\n // By keeping all props equal React will keep the component in the DOM\n return createElement(as, {\n ...wrapperProps,\n style: {\n ...wStyle,\n ...style,\n backgroundColor,\n },\n className: `${wClass}${className ? ` ${className}` : ``}`,\n ref: root,\n dangerouslySetInnerHTML: {\n __html: sizer,\n },\n suppressHydrationWarning: true,\n })\n}\n\nexport const GatsbyImage: FunctionComponent = memo(\n function GatsbyImage(props) {\n if (!props.image) {\n if (process.env.NODE_ENV === `development`) {\n console.warn(`[gatsby-plugin-image] Missing image prop`)\n }\n\n return null\n }\n\n if (!gatsbyImageIsInstalled() && process.env.NODE_ENV === `development`) {\n console.warn(\n `[gatsby-plugin-image] You're missing out on some cool performance features. Please add \"gatsby-plugin-image\" to your gatsby-config.js`\n )\n }\n\n return createElement(GatsbyImageHydrator, props)\n }\n)\n\nGatsbyImage.propTypes = propTypes\nGatsbyImage.displayName = `GatsbyImage`\n","import React, { FunctionComponent, ReactElement } from \"react\"\nimport {\n altValidator,\n GatsbyImage as GatsbyImageServer,\n} from \"./gatsby-image.server\"\nimport { GatsbyImageProps, IGatsbyImageData } from \"./gatsby-image.browser\"\nimport PropTypes from \"prop-types\"\nimport { ISharpGatsbyImageArgs } from \"../image-utils\"\n\nexport interface IStaticImageProps\n extends Omit,\n Omit {\n src: string\n}\n\n// These values are added by Babel. Do not add them manually\ninterface IPrivateProps {\n __imageData?: IGatsbyImageData\n __error?: string\n}\n\nexport function _getStaticImage(\n GatsbyImage: FunctionComponent\n): React.FC {\n return function StaticImage({\n src,\n __imageData: imageData,\n __error,\n // We extract these because they're not meant to be passed-down to GatsbyImage\n /* eslint-disable @typescript-eslint/no-unused-vars */\n width,\n height,\n aspectRatio,\n tracedSVGOptions,\n placeholder,\n formats,\n quality,\n transformOptions,\n jpgOptions,\n pngOptions,\n webpOptions,\n avifOptions,\n blurredOptions,\n breakpoints,\n outputPixelDensities,\n /* eslint-enable @typescript-eslint/no-unused-vars */\n ...props\n }): ReactElement {\n if (__error) {\n console.warn(__error)\n }\n\n if (imageData) {\n return \n }\n console.warn(`Image not loaded`, src)\n if (!__error && process.env.NODE_ENV === `development`) {\n console.warn(\n `Please ensure that \"gatsby-plugin-image\" is included in the plugins array in gatsby-config.js, and that your version of gatsby is at least 2.24.78`\n )\n }\n return null\n }\n}\n\nconst StaticImage: React.FC =\n _getStaticImage(GatsbyImageServer)\n\nconst checkDimensionProps: PropTypes.Validator = (\n props: IStaticImageProps & IPrivateProps,\n propName: keyof IStaticImageProps & IPrivateProps,\n ...rest\n) => {\n if (\n props.layout === `fullWidth` &&\n (propName === `width` || propName === `height`) &&\n props[propName]\n ) {\n return new Error(\n `\"${propName}\" ${props[propName]} may not be passed when layout is fullWidth.`\n )\n }\n return PropTypes.number(props, propName, ...rest)\n}\n\nconst validLayouts = new Set([`fixed`, `fullWidth`, `constrained`])\n\nexport const propTypes = {\n src: PropTypes.string.isRequired,\n alt: altValidator,\n width: checkDimensionProps,\n height: checkDimensionProps,\n sizes: PropTypes.string,\n layout: (props: IStaticImageProps & IPrivateProps): Error | undefined => {\n if (props.layout === undefined) {\n return undefined\n }\n if (validLayouts.has(props.layout)) {\n return undefined\n }\n\n return new Error(\n `Invalid value ${props.layout}\" provided for prop \"layout\". Defaulting to \"constrained\". Valid values are \"fixed\", \"fullWidth\" or \"constrained\".`\n )\n },\n}\n\nStaticImage.displayName = `StaticImage`\nStaticImage.propTypes = propTypes\n\nexport { StaticImage }\n","import {\n GatsbyImage as GatsbyImageBrowser,\n IGatsbyImageData,\n} from \"./gatsby-image.browser\"\nimport React from \"react\"\nimport {\n _getStaticImage,\n propTypes,\n IStaticImageProps,\n} from \"./static-image.server\"\n// These values are added by Babel. Do not add them manually\ninterface IPrivateProps {\n __imageData?: IGatsbyImageData\n __error?: string\n}\n\nconst StaticImage: React.FC =\n _getStaticImage(GatsbyImageBrowser)\n\nStaticImage.displayName = `StaticImage`\nStaticImage.propTypes = propTypes\n\nexport { StaticImage }\n","'use strict';\n\nfunction _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }\n\nvar React = require('react');\nvar React__default = _interopDefault(React);\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}\n\nvar canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\nfunction withSideEffect(reducePropsToState, handleStateChangeOnClient, mapStateOnServer) {\n if (typeof reducePropsToState !== 'function') {\n throw new Error('Expected reducePropsToState to be a function.');\n }\n\n if (typeof handleStateChangeOnClient !== 'function') {\n throw new Error('Expected handleStateChangeOnClient to be a function.');\n }\n\n if (typeof mapStateOnServer !== 'undefined' && typeof mapStateOnServer !== 'function') {\n throw new Error('Expected mapStateOnServer to either be undefined or a function.');\n }\n\n function getDisplayName(WrappedComponent) {\n return WrappedComponent.displayName || WrappedComponent.name || 'Component';\n }\n\n return function wrap(WrappedComponent) {\n if (typeof WrappedComponent !== 'function') {\n throw new Error('Expected WrappedComponent to be a React component.');\n }\n\n var mountedInstances = [];\n var state;\n\n function emitChange() {\n state = reducePropsToState(mountedInstances.map(function (instance) {\n return instance.props;\n }));\n\n if (SideEffect.canUseDOM) {\n handleStateChangeOnClient(state);\n } else if (mapStateOnServer) {\n state = mapStateOnServer(state);\n }\n }\n\n var SideEffect =\n /*#__PURE__*/\n function (_PureComponent) {\n _inheritsLoose(SideEffect, _PureComponent);\n\n function SideEffect() {\n return _PureComponent.apply(this, arguments) || this;\n }\n\n // Try to use displayName of wrapped component\n // Expose canUseDOM so tests can monkeypatch it\n SideEffect.peek = function peek() {\n return state;\n };\n\n SideEffect.rewind = function rewind() {\n if (SideEffect.canUseDOM) {\n throw new Error('You may only call rewind() on the server. Call peek() to read the current state.');\n }\n\n var recordedState = state;\n state = undefined;\n mountedInstances = [];\n return recordedState;\n };\n\n var _proto = SideEffect.prototype;\n\n _proto.UNSAFE_componentWillMount = function UNSAFE_componentWillMount() {\n mountedInstances.push(this);\n emitChange();\n };\n\n _proto.componentDidUpdate = function componentDidUpdate() {\n emitChange();\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n var index = mountedInstances.indexOf(this);\n mountedInstances.splice(index, 1);\n emitChange();\n };\n\n _proto.render = function render() {\n return React__default.createElement(WrappedComponent, this.props);\n };\n\n return SideEffect;\n }(React.PureComponent);\n\n _defineProperty(SideEffect, \"displayName\", \"SideEffect(\" + getDisplayName(WrappedComponent) + \")\");\n\n _defineProperty(SideEffect, \"canUseDOM\", canUseDOM);\n\n return SideEffect;\n };\n}\n\nmodule.exports = withSideEffect;\n","import { useState, useEffect } from 'react';\nconst area = 48;\nexport const Burger = ({\n color = 'currentColor',\n direction = 'left',\n distance = 'md',\n duration = 0.4,\n easing = 'cubic-bezier(0, 0, 0, 1)',\n hideOutline = true,\n label,\n lines = 3,\n onToggle,\n render,\n rounded = false,\n size = 32,\n toggle,\n toggled,\n disabled = false,\n animateOnMount = false\n}) => {\n const [toggledInternal, toggleInternal] = useState(false);\n const [mounted, setMounted] = useState(false);\n useEffect(() => {\n setMounted(true);\n }, []);\n const width = Math.max(12, Math.min(area, size));\n const room = Math.round((area - width) / 2);\n const barHeightRaw = width / 12;\n const barHeight = Math.round(barHeightRaw);\n const space = distance === 'lg' ? 0.25 : distance === 'sm' ? 0.75 : 0.5;\n const marginRaw = width / (lines * (space + (lines === 3 ? 1 : 1.25)));\n const margin = Math.round(marginRaw);\n const height = barHeight * lines + margin * (lines - 1);\n const topOffset = Math.round((area - height) / 2);\n const translate = lines === 3 ? distance === 'lg' ? 4.0425 : distance === 'sm' ? 5.1625 : 4.6325 : distance === 'lg' ? 6.7875 : distance === 'sm' ? 8.4875 : 7.6675;\n const deviation = (barHeightRaw - barHeight + (marginRaw - margin)) / (lines === 3 ? 1 : 2);\n const move = parseFloat((width / translate - deviation / (4 / 3)).toFixed(2));\n const time = Math.max(0, duration);\n const burgerStyles = {\n cursor: disabled ? 'not-allowed' : 'pointer',\n height: `${area}px`,\n position: 'relative',\n transition: `${time}s ${easing}`,\n userSelect: 'none',\n width: `${area}px`\n };\n const barStyles = {\n background: color,\n height: `${barHeight}px`,\n left: `${room}px`,\n position: 'absolute'\n };\n if (hideOutline) {\n burgerStyles['outline'] = 'none';\n }\n if (rounded) {\n barStyles['borderRadius'] = '9em';\n }\n const getIsToggled = () => {\n const isToggled = toggled !== undefined ? toggled : toggledInternal;\n return animateOnMount && !mounted ? !isToggled : isToggled;\n };\n const toggleFunction = toggle || toggleInternal;\n const isToggled = getIsToggled();\n const handler = () => {\n toggleFunction(!isToggled);\n if (typeof onToggle === 'function') onToggle(!isToggled);\n };\n return render({\n barHeight,\n barStyles,\n burgerStyles,\n easing,\n handler,\n isLeft: direction === 'left',\n isToggled,\n label,\n margin,\n move,\n time,\n topOffset,\n width\n });\n};","function _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); }\nimport { Burger } from './Burger';\nimport React from 'react';\nexport const Spin = props => /*#__PURE__*/React.createElement(Burger, _extends({}, props, {\n render: o => /*#__PURE__*/React.createElement(\"div\", {\n className: \"hamburger-react\",\n \"aria-label\": o.label,\n \"aria-expanded\": o.isToggled,\n onClick: props.disabled ? undefined : o.handler,\n onKeyUp: props.disabled ? undefined : e => e.key === 'Enter' && o.handler(),\n role: \"button\",\n style: {\n ...o.burgerStyles,\n transform: `${o.isToggled ? `rotate(${180 * (o.isLeft ? -1 : 1)}deg)` : 'none'}`\n },\n tabIndex: 0\n }, /*#__PURE__*/React.createElement(\"div\", {\n style: {\n ...o.barStyles,\n width: `${o.width}px`,\n top: `${o.topOffset}px`,\n transition: `${o.time}s ${o.easing}`,\n transform: `${o.isToggled ? `rotate(${45 * (o.isLeft ? -1 : 1)}deg) translate(${o.move * (o.isLeft ? -1 : 1)}px, ${o.move}px)` : 'none'}`\n }\n }), /*#__PURE__*/React.createElement(\"div\", {\n style: {\n ...o.barStyles,\n width: `${o.width}px`,\n top: `${o.topOffset + o.barHeight + o.margin}px`,\n transition: `${o.time}s ${o.easing}`,\n opacity: `${o.isToggled ? '0' : '1'}`\n }\n }), /*#__PURE__*/React.createElement(\"div\", {\n style: {\n ...o.barStyles,\n width: `${o.width}px`,\n top: `${o.topOffset + o.barHeight * 2 + o.margin * 2}px`,\n transition: `${o.time}s ${o.easing}`,\n transform: `${o.isToggled ? `rotate(${45 * (o.isLeft ? 1 : -1)}deg) translate(${o.move * (o.isLeft ? -1 : 1)}px, ${o.move * -1}px)` : 'none'}`\n }\n }))\n}));","import React, { useEffect, useRef, useState } from \"react\"\nimport { Link } from \"gatsby\"\nimport { Spin as Hamburger } from \"hamburger-react\"\nimport { StaticImage } from \"gatsby-plugin-image\"\nimport { Helmet } from \"react-helmet\"\nimport useScrollPosition from \"../../utilities/use-scroll-position\"\nimport NavItems from \"./nav-items\"\nimport AdjustLink from \"../adjust-link\"\nimport useQueryParams from \"query-params-hook\"\n\nconst MenuMobile = ({ shouldShowBanner = false, light_version = false, lpV2 = false }) => {\n const { page_version } = useQueryParams()\n const { scrollY } = useScrollPosition()\n const [isScrolled, setIsScrolled] = useState(false)\n const [showNav, setShowNav] = useState(false)\n const [menuPosition, setMenuPosition] = useState(0)\n\n const [openMobileMenu, setOpenMobileMenu] = useState(null)\n\n const topMobileMenuRef = useRef(null)\n\n useEffect(() => {\n setIsScrolled(scrollY >= 80)\n }, [scrollY])\n\n const toggleNav = (show: boolean) => {\n // @ts-ignore\n const navRect = topMobileMenuRef.current.getBoundingClientRect()\n const topMobileMenuHeight = navRect.top + navRect.height\n setMenuPosition(topMobileMenuHeight)\n setShowNav(show)\n }\n\n const handleOpenMenuClick = (menuItem: string) => {\n setOpenMobileMenu((current) => (current === menuItem ? null : menuItem))\n }\n\n return (\n <>\n \n \n {showNav && (\n \n \n
\n \n \n \n
\n \n )}\n \n
\n {!light_version ? (\n
\n \n \n \n
\n \n BLOG\n \n
\n
\n ) : (\n
\n {lpV2 ? \n \n :\n \n }\n
\n BLOG\n
\n
\n )}\n
\n \n {isScrolled &&\n \n }\n \n \n {!light_version && (\n
\n
\n toggleNav(show)}\n />\n
\n
\n )}\n
\n \n \n );\n}\n\nexport default MenuMobile\n","import React, { useEffect, useState } from \"react\";\nimport { StaticImage } from \"gatsby-plugin-image\";\nimport { isMobile } from \"react-device-detect\";\n\nexport type StoreType = { name: string; mobile?: string; desktop?: string };\n\nconst DEFAULT_VALUES = [\n { name: \"Google\", desktop: \"https://app.adjust.com/mlfe265\" },\n { name: \"Apple\", desktop: \"https://app.adjust.com/1nral99\" },\n { name: \"Amazon\", desktop: \"https://app.adjust.com/s1l53w9\" },\n {\n name: \"Facebook\",\n desktop:\n \"https://app.adjust.com/22tbdjx?redirect=https://apps.facebook.com/jackpotpartycasino/?source=jackpotparty.com&campaign_id=badge\",\n },\n] as StoreType[];\n\nconst Stores = ({ callBack, links }: { callBack?: () => void; links?: StoreType[] }) => {\n const [stores, setStores] = useState([] as StoreType[]);\n const images = {\n Google: (\n \n ),\n Apple: (\n \n ),\n Amazon: (\n \n ),\n Facebook: (\n \n ),\n };\n useEffect(\n () => setStores(links?.length ? links : DEFAULT_VALUES),\n [links?.length]\n );\n return (\n \n {stores?.map(({ name, desktop, mobile }) => {\n return (\n item.name === name)?.desktop\n }\n target=\"_blank\"\n onClick={() => callBack?.()}\n >\n {images[name]}\n \n );\n })}\n \n );\n};\n\nexport default Stores;\n","'use strict';\n\nconst preserveCamelCase = string => {\n\tlet isLastCharLower = false;\n\tlet isLastCharUpper = false;\n\tlet isLastLastCharUpper = false;\n\n\tfor (let i = 0; i < string.length; i++) {\n\t\tconst character = string[i];\n\n\t\tif (isLastCharLower && /[a-zA-Z]/.test(character) && character.toUpperCase() === character) {\n\t\t\tstring = string.slice(0, i) + '-' + string.slice(i);\n\t\t\tisLastCharLower = false;\n\t\t\tisLastLastCharUpper = isLastCharUpper;\n\t\t\tisLastCharUpper = true;\n\t\t\ti++;\n\t\t} else if (isLastCharUpper && isLastLastCharUpper && /[a-zA-Z]/.test(character) && character.toLowerCase() === character) {\n\t\t\tstring = string.slice(0, i - 1) + '-' + string.slice(i - 1);\n\t\t\tisLastLastCharUpper = isLastCharUpper;\n\t\t\tisLastCharUpper = false;\n\t\t\tisLastCharLower = true;\n\t\t} else {\n\t\t\tisLastCharLower = character.toLowerCase() === character && character.toUpperCase() !== character;\n\t\t\tisLastLastCharUpper = isLastCharUpper;\n\t\t\tisLastCharUpper = character.toUpperCase() === character && character.toLowerCase() !== character;\n\t\t}\n\t}\n\n\treturn string;\n};\n\nconst camelCase = (input, options) => {\n\tif (!(typeof input === 'string' || Array.isArray(input))) {\n\t\tthrow new TypeError('Expected the input to be `string | string[]`');\n\t}\n\n\toptions = Object.assign({\n\t\tpascalCase: false\n\t}, options);\n\n\tconst postProcess = x => options.pascalCase ? x.charAt(0).toUpperCase() + x.slice(1) : x;\n\n\tif (Array.isArray(input)) {\n\t\tinput = input.map(x => x.trim())\n\t\t\t.filter(x => x.length)\n\t\t\t.join('-');\n\t} else {\n\t\tinput = input.trim();\n\t}\n\n\tif (input.length === 0) {\n\t\treturn '';\n\t}\n\n\tif (input.length === 1) {\n\t\treturn options.pascalCase ? input.toUpperCase() : input.toLowerCase();\n\t}\n\n\tconst hasUpperCase = input !== input.toLowerCase();\n\n\tif (hasUpperCase) {\n\t\tinput = preserveCamelCase(input);\n\t}\n\n\tinput = input\n\t\t.replace(/^[_.\\- ]+/, '')\n\t\t.toLowerCase()\n\t\t.replace(/[_.\\- ]+(\\w|$)/g, (_, p1) => p1.toUpperCase())\n\t\t.replace(/\\d+(\\w|$)/g, m => m.toUpperCase());\n\n\treturn postProcess(input);\n};\n\nmodule.exports = camelCase;\n// TODO: Remove this for the next major release\nmodule.exports.default = camelCase;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar useQueryParams = function () {\n if (typeof window === 'undefined')\n return {};\n var params = new URLSearchParams(window ? window.location.search : {});\n return new Proxy(params, {\n get: function (target, prop) {\n return target.get(prop);\n },\n });\n};\nexports.default = useQueryParams;\n","/* UAParser.js v1.0.40\n Copyright © 2012-2024 Faisal Salman \n MIT License */\n(function(window,undefined){\"use strict\";var LIBVERSION=\"1.0.40\",EMPTY=\"\",UNKNOWN=\"?\",FUNC_TYPE=\"function\",UNDEF_TYPE=\"undefined\",OBJ_TYPE=\"object\",STR_TYPE=\"string\",MAJOR=\"major\",MODEL=\"model\",NAME=\"name\",TYPE=\"type\",VENDOR=\"vendor\",VERSION=\"version\",ARCHITECTURE=\"architecture\",CONSOLE=\"console\",MOBILE=\"mobile\",TABLET=\"tablet\",SMARTTV=\"smarttv\",WEARABLE=\"wearable\",EMBEDDED=\"embedded\",UA_MAX_LENGTH=500;var AMAZON=\"Amazon\",APPLE=\"Apple\",ASUS=\"ASUS\",BLACKBERRY=\"BlackBerry\",BROWSER=\"Browser\",CHROME=\"Chrome\",EDGE=\"Edge\",FIREFOX=\"Firefox\",GOOGLE=\"Google\",HUAWEI=\"Huawei\",LG=\"LG\",MICROSOFT=\"Microsoft\",MOTOROLA=\"Motorola\",OPERA=\"Opera\",SAMSUNG=\"Samsung\",SHARP=\"Sharp\",SONY=\"Sony\",XIAOMI=\"Xiaomi\",ZEBRA=\"Zebra\",FACEBOOK=\"Facebook\",CHROMIUM_OS=\"Chromium OS\",MAC_OS=\"Mac OS\",SUFFIX_BROWSER=\" Browser\";var extend=function(regexes,extensions){var mergedRegexes={};for(var i in regexes){if(extensions[i]&&extensions[i].length%2===0){mergedRegexes[i]=extensions[i].concat(regexes[i])}else{mergedRegexes[i]=regexes[i]}}return mergedRegexes},enumerize=function(arr){var enums={};for(var i=0;i0){if(q.length===2){if(typeof q[1]==FUNC_TYPE){this[q[0]]=q[1].call(this,match)}else{this[q[0]]=q[1]}}else if(q.length===3){if(typeof q[1]===FUNC_TYPE&&!(q[1].exec&&q[1].test)){this[q[0]]=match?q[1].call(this,match,q[2]):undefined}else{this[q[0]]=match?match.replace(q[1],q[2]):undefined}}else if(q.length===4){this[q[0]]=match?q[3].call(this,match.replace(q[1],q[2])):undefined}}else{this[q]=match?match:undefined}}}}i+=2}},strMapper=function(str,map){for(var i in map){if(typeof map[i]===OBJ_TYPE&&map[i].length>0){for(var j=0;j2){_device[MODEL]=\"iPad\";_device[TYPE]=TABLET}return _device};this.getEngine=function(){var _engine={};_engine[NAME]=undefined;_engine[VERSION]=undefined;rgxMapper.call(_engine,_ua,_rgxmap.engine);return _engine};this.getOS=function(){var _os={};_os[NAME]=undefined;_os[VERSION]=undefined;rgxMapper.call(_os,_ua,_rgxmap.os);if(_isSelfNav&&!_os[NAME]&&_uach&&_uach.platform&&_uach.platform!=\"Unknown\"){_os[NAME]=_uach.platform.replace(/chrome os/i,CHROMIUM_OS).replace(/macos/i,MAC_OS)}return _os};this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}};this.getUA=function(){return _ua};this.setUA=function(ua){_ua=typeof ua===STR_TYPE&&ua.length>UA_MAX_LENGTH?trim(ua,UA_MAX_LENGTH):ua;return this};this.setUA(_ua);return this};UAParser.VERSION=LIBVERSION;UAParser.BROWSER=enumerize([NAME,VERSION,MAJOR]);UAParser.CPU=enumerize([ARCHITECTURE]);UAParser.DEVICE=enumerize([MODEL,VENDOR,TYPE,CONSOLE,MOBILE,SMARTTV,TABLET,WEARABLE,EMBEDDED]);UAParser.ENGINE=UAParser.OS=enumerize([NAME,VERSION]);if(typeof exports!==UNDEF_TYPE){if(typeof module!==UNDEF_TYPE&&module.exports){exports=module.exports=UAParser}exports.UAParser=UAParser}else{if(typeof define===FUNC_TYPE&&define.amd){define(function(){return UAParser})}else if(typeof window!==UNDEF_TYPE){window.UAParser=UAParser}}var $=typeof window!==UNDEF_TYPE&&(window.jQuery||window.Zepto);if($&&!$.ua){var parser=new UAParser;$.ua=parser.getResult();$.ua.get=function(){return parser.getUA()};$.ua.set=function(ua){parser.setUA(ua);var result=parser.getResult();for(var prop in result){$.ua[prop]=result[prop]}}}})(typeof window===\"object\"?window:this);","export function replaceByDict(string: string, dict: {}) {\n for (const key in dict) {\n if (dict[key]) {\n const searchRegExp = new RegExp(`{${key}}`, 'gi')\n string = string.replace(searchRegExp, dict[key])\n }\n }\n\n return string\n}\n","import React, { useEffect, useMemo } from \"react\"\nimport { StaticImage } from \"gatsby-plugin-image\"\nimport Stores from \"./stores\"\nimport useQueryParams from \"query-params-hook\"\nimport { replaceByDict } from \"../utilities/replace-by-dict\"\n\ndeclare const window: any\n\nexport type DownloadPopupType = {\n onCloseClick: () => void | null\n isLpPage?: boolean\n show: boolean\n}\n\nconst DownloadPopup = ({ show, isLpPage, onCloseClick }: DownloadPopupType) => {\n useEffect(() => {\n if (show) {\n typeof window !== `undefined` && typeof window.gtag === \"function\"\n ? window.gtag(\"event\", \"desktop_popup_open\")\n : null\n }\n }, [show])\n const { campaignid, adgroupid, keyword, adid, lpurl, gclid} = useQueryParams()\n\n const replaceHashed = useMemo(\n () => ({ campaignid, adgroupid, keyword, adid, lpurl, gclid }),\n [campaignid, adgroupid, keyword, adid, lpurl, gclid]\n );\n\n const storesLinks = useMemo(() => {\n return isLpPage\n ? [\n {\n name: \"Google\",\n desktop: replaceByDict(\n \"https://app.adjust.com/zuoayv2?campaign={campaignid}&adgroup={adgroupid}&creative={keyword}_{adid}&lpurl={lpurl}&external_click_id={gclid}\",\n replaceHashed\n ),\n },\n {\n name: \"Apple\",\n desktop: replaceByDict(\n \"https://app.adjust.com/imr1p88?campaign={campaignid}&adgroup={adgroupid}&creative={keyword}_{adid}&lpurl={lpurl}&external_click_id={gclid}&redirect=https://apps.apple.com/us/app/jackpot-party-casino-slots/id575980917?ppid=6a92d9c1-406f-464b-a0ee-02ccb01ac1ce\",\n replaceHashed\n ),\n },\n ]\n : [\n { name: \"Google\", desktop: \"https://app.adjust.com/11twtjhk\" },\n { name: \"Apple\", desktop: \"https://app.adjust.com/11tu4zkz\" },\n { name: \"Amazon\", desktop: \"https://app.adjust.com/11fdhhnp\" },\n {\n name: \"Facebook\",\n desktop:\n \"https://apps.facebook.com/jackpotpartycasino/?source=jackpotparty.com&campaign_id=popupbadges\",\n },\n ];\n }, [isLpPage, replaceHashed]);\n\n return (\n <>\n \n \n
\n \n
\n \n
DOWNLOAD & PLAY
\n\n {!isLpPage && \n
\n scan qr code to play\n
\n \n
\n
\n }\n
\n \n
\n \n \n );\n}\n\nexport default DownloadPopup\n","import React from \"react\";\nimport { StaticImage } from \"gatsby-plugin-image\";\nimport useIsMobile from \"../utilities/useIsMobile\";\n\nconst SciplayGames = ({ showTitles }: { showTitles: boolean }) => {\n const width = 100;\n const isMobile = useIsMobile();\n\n const games = {\n GFC: {\n url: \"https://www.goldfishslots.com/\",\n image: (\n \n ),\n label: \"GFC\",\n title: (\n <>\n Gold Fish
\n Casino Slots\n \n ),\n },\n QHS: {\n url: \"https://www.quickhitslots.com/\",\n image: (\n \n ),\n label: \"Quick Hit\",\n title: (\n <>\n Quick Hit
\n Slots\n \n ),\n },\n HSC: {\n url: isMobile\n ? \"https://app.adjust.com/1huv86ns_1htki50e\"\n : \"https://apps.facebook.com/hotshotcasino/?source=jackpotparty.com\",\n image: (\n \n ),\n label: \"Hot Shot\",\n title: (\n <>\n Hot Shot
\n Casino\n \n ),\n },\n BINGO: {\n url: isMobile\n ? \"https://app.adjust.com/1hrkj6xg_1hijl0ww\"\n : \"https://apps.facebook.com/bingo-showdown/?source=jackpotparty.com\",\n image: (\n \n ),\n label: \"BINGO\",\n title: (\n <>\n BINGO\n
Showdown\n \n ),\n },\n \"88F\": {\n url: isMobile\n ? \"https://app.adjust.com/1hw8c91l_1hkf7v13\"\n : \"https://play.google.com/store/apps/details?id=com.ballytechnologies.f88\",\n image: (\n \n ),\n label: \"88 Fortunes\",\n title: (\n <>\n 88 Fortunes
\n Slots\n \n ),\n },\n MS: {\n url: isMobile\n ? \"https://app.adjust.com/1hh9da1e_1hzxmq35\"\n : \"https://apps.facebook.com/monopoly-slots/?source=jackpotparty.com\",\n image: (\n \n ),\n label: \"MONONPOLY\",\n title: (\n <>\n MONONPOLY\n
Slots\n \n ),\n },\n BG: {\n url: isMobile\n ? \"https://app.adjust.com/1hqrpxs2_1hq8rm5l\"\n : \"https://apps.facebook.com/cp_backgammon_new/?source=jackpotparty.com\",\n image: (\n \n ),\n label: \"Backgammon\",\n title: (\n <>\n Backgammon\n
Live ™\n \n ),\n },\n SPA: {\n url: isMobile\n ? \"https://app.adjust.com/1ht7xcvk_1hont5im\"\n : \"https://apps.apple.com/ph/app/solitaire-pets-fun-card-game/id1354369053?mt=8\",\n image: (\n \n ),\n label: \"Solitaire Pets\",\n title: (\n <>\n Solitaire Pets
Adventure\n \n ),\n },\n };\n\n return (\n
\n {Object.keys(games).map((gameKey) => {\n const game = games[gameKey];\n return (\n
\n \n {game.image}\n \n {showTitles && (\n \n {game.title}\n \n )}\n
\n );\n })}\n
\n );\n};\n\nexport default SciplayGames;\n\n","import React, { useEffect, useMemo, useState } from \"react\"\nimport { Link } from \"gatsby\"\nimport { StaticImage } from \"gatsby-plugin-image\"\nimport useQueryParams from \"query-params-hook\"\nimport SciplayGames from \"./sciplay-games\"\nimport Stores, { StoreType } from \"./stores\"\nimport { replaceByDict } from \"../utilities/replace-by-dict\"\n\nconst Footer = ({ isLpPage }: { isLpPage?: boolean }) => {\n const { page_version, campaignid, adgroupid, keyword, adid, lpurl, gclid} = useQueryParams()\n const [isLoading, setIsLoading] = useState(true);\n const [lightVersion, setLightVersion] = useState(false);\n\n useEffect(() => {\n setLightVersion(!!page_version);\n setIsLoading(false);\n }, [page_version]);\n\n const replaceHashed = useMemo(\n () => ({ campaignid, adgroupid, keyword, adid, lpurl, gclid }),\n [campaignid, adgroupid, keyword, adid, lpurl, gclid]\n );\n\n if (isLoading) return null;\n return (\n
\n {!lightVersion && !isLpPage && (\n
\n

\n SCIPLAY'S GAMES\n

\n \n
\n )}\n {!lightVersion && (\n
\n
\n \n \n \n
\n \n {!isLpPage && (\n
\n
FOLLOW US
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n
\n
\n )}\n
\n )}\n
\n {lightVersion ? (\n
\n \n
\n ) : (\n \n \n \n )}\n

\n © Copyright {new Date().getFullYear()}. SciPlay Corporation. All Rights Reserved. |{\" \"}\n \n Terms of Service\n {\" \"}\n |{\" \"}\n \n Privacy Policy\n {\" \"}\n |{\" \"}\n \n Cookies\n {\" \"}\n |{\" \"}\n \n Responsible Gaming\n \n

\n
\n
\n );\n}\n\nexport default Footer\n","import PropTypes from 'prop-types';\nimport withSideEffect from 'react-side-effect';\nimport isEqual from 'react-fast-compare';\nimport React from 'react';\nimport objectAssign from 'object-assign';\n\nvar ATTRIBUTE_NAMES = {\n BODY: \"bodyAttributes\",\n HTML: \"htmlAttributes\",\n TITLE: \"titleAttributes\"\n};\n\nvar TAG_NAMES = {\n BASE: \"base\",\n BODY: \"body\",\n HEAD: \"head\",\n HTML: \"html\",\n LINK: \"link\",\n META: \"meta\",\n NOSCRIPT: \"noscript\",\n SCRIPT: \"script\",\n STYLE: \"style\",\n TITLE: \"title\"\n};\n\nvar VALID_TAG_NAMES = Object.keys(TAG_NAMES).map(function (name) {\n return TAG_NAMES[name];\n});\n\nvar TAG_PROPERTIES = {\n CHARSET: \"charset\",\n CSS_TEXT: \"cssText\",\n HREF: \"href\",\n HTTPEQUIV: \"http-equiv\",\n INNER_HTML: \"innerHTML\",\n ITEM_PROP: \"itemprop\",\n NAME: \"name\",\n PROPERTY: \"property\",\n REL: \"rel\",\n SRC: \"src\",\n TARGET: \"target\"\n};\n\nvar REACT_TAG_MAP = {\n accesskey: \"accessKey\",\n charset: \"charSet\",\n class: \"className\",\n contenteditable: \"contentEditable\",\n contextmenu: \"contextMenu\",\n \"http-equiv\": \"httpEquiv\",\n itemprop: \"itemProp\",\n tabindex: \"tabIndex\"\n};\n\nvar HELMET_PROPS = {\n DEFAULT_TITLE: \"defaultTitle\",\n DEFER: \"defer\",\n ENCODE_SPECIAL_CHARACTERS: \"encodeSpecialCharacters\",\n ON_CHANGE_CLIENT_STATE: \"onChangeClientState\",\n TITLE_TEMPLATE: \"titleTemplate\"\n};\n\nvar HTML_TAG_MAP = Object.keys(REACT_TAG_MAP).reduce(function (obj, key) {\n obj[REACT_TAG_MAP[key]] = key;\n return obj;\n}, {});\n\nvar SELF_CLOSING_TAGS = [TAG_NAMES.NOSCRIPT, TAG_NAMES.SCRIPT, TAG_NAMES.STYLE];\n\nvar HELMET_ATTRIBUTE = \"data-react-helmet\";\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n return typeof obj;\n} : function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n};\n\nvar classCallCheck = function (instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\nvar createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\nvar inherits = function (subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n};\n\nvar objectWithoutProperties = function (obj, keys) {\n var target = {};\n\n for (var i in obj) {\n if (keys.indexOf(i) >= 0) continue;\n if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;\n target[i] = obj[i];\n }\n\n return target;\n};\n\nvar possibleConstructorReturn = function (self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n};\n\nvar encodeSpecialCharacters = function encodeSpecialCharacters(str) {\n var encode = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n if (encode === false) {\n return String(str);\n }\n\n return String(str).replace(/&/g, \"&\").replace(//g, \">\").replace(/\"/g, \""\").replace(/'/g, \"'\");\n};\n\nvar getTitleFromPropsList = function getTitleFromPropsList(propsList) {\n var innermostTitle = getInnermostProperty(propsList, TAG_NAMES.TITLE);\n var innermostTemplate = getInnermostProperty(propsList, HELMET_PROPS.TITLE_TEMPLATE);\n\n if (innermostTemplate && innermostTitle) {\n // use function arg to avoid need to escape $ characters\n return innermostTemplate.replace(/%s/g, function () {\n return Array.isArray(innermostTitle) ? innermostTitle.join(\"\") : innermostTitle;\n });\n }\n\n var innermostDefaultTitle = getInnermostProperty(propsList, HELMET_PROPS.DEFAULT_TITLE);\n\n return innermostTitle || innermostDefaultTitle || undefined;\n};\n\nvar getOnChangeClientState = function getOnChangeClientState(propsList) {\n return getInnermostProperty(propsList, HELMET_PROPS.ON_CHANGE_CLIENT_STATE) || function () {};\n};\n\nvar getAttributesFromPropsList = function getAttributesFromPropsList(tagType, propsList) {\n return propsList.filter(function (props) {\n return typeof props[tagType] !== \"undefined\";\n }).map(function (props) {\n return props[tagType];\n }).reduce(function (tagAttrs, current) {\n return _extends({}, tagAttrs, current);\n }, {});\n};\n\nvar getBaseTagFromPropsList = function getBaseTagFromPropsList(primaryAttributes, propsList) {\n return propsList.filter(function (props) {\n return typeof props[TAG_NAMES.BASE] !== \"undefined\";\n }).map(function (props) {\n return props[TAG_NAMES.BASE];\n }).reverse().reduce(function (innermostBaseTag, tag) {\n if (!innermostBaseTag.length) {\n var keys = Object.keys(tag);\n\n for (var i = 0; i < keys.length; i++) {\n var attributeKey = keys[i];\n var lowerCaseAttributeKey = attributeKey.toLowerCase();\n\n if (primaryAttributes.indexOf(lowerCaseAttributeKey) !== -1 && tag[lowerCaseAttributeKey]) {\n return innermostBaseTag.concat(tag);\n }\n }\n }\n\n return innermostBaseTag;\n }, []);\n};\n\nvar getTagsFromPropsList = function getTagsFromPropsList(tagName, primaryAttributes, propsList) {\n // Calculate list of tags, giving priority innermost component (end of the propslist)\n var approvedSeenTags = {};\n\n return propsList.filter(function (props) {\n if (Array.isArray(props[tagName])) {\n return true;\n }\n if (typeof props[tagName] !== \"undefined\") {\n warn(\"Helmet: \" + tagName + \" should be of type \\\"Array\\\". Instead found type \\\"\" + _typeof(props[tagName]) + \"\\\"\");\n }\n return false;\n }).map(function (props) {\n return props[tagName];\n }).reverse().reduce(function (approvedTags, instanceTags) {\n var instanceSeenTags = {};\n\n instanceTags.filter(function (tag) {\n var primaryAttributeKey = void 0;\n var keys = Object.keys(tag);\n for (var i = 0; i < keys.length; i++) {\n var attributeKey = keys[i];\n var lowerCaseAttributeKey = attributeKey.toLowerCase();\n\n // Special rule with link tags, since rel and href are both primary tags, rel takes priority\n if (primaryAttributes.indexOf(lowerCaseAttributeKey) !== -1 && !(primaryAttributeKey === TAG_PROPERTIES.REL && tag[primaryAttributeKey].toLowerCase() === \"canonical\") && !(lowerCaseAttributeKey === TAG_PROPERTIES.REL && tag[lowerCaseAttributeKey].toLowerCase() === \"stylesheet\")) {\n primaryAttributeKey = lowerCaseAttributeKey;\n }\n // Special case for innerHTML which doesn't work lowercased\n if (primaryAttributes.indexOf(attributeKey) !== -1 && (attributeKey === TAG_PROPERTIES.INNER_HTML || attributeKey === TAG_PROPERTIES.CSS_TEXT || attributeKey === TAG_PROPERTIES.ITEM_PROP)) {\n primaryAttributeKey = attributeKey;\n }\n }\n\n if (!primaryAttributeKey || !tag[primaryAttributeKey]) {\n return false;\n }\n\n var value = tag[primaryAttributeKey].toLowerCase();\n\n if (!approvedSeenTags[primaryAttributeKey]) {\n approvedSeenTags[primaryAttributeKey] = {};\n }\n\n if (!instanceSeenTags[primaryAttributeKey]) {\n instanceSeenTags[primaryAttributeKey] = {};\n }\n\n if (!approvedSeenTags[primaryAttributeKey][value]) {\n instanceSeenTags[primaryAttributeKey][value] = true;\n return true;\n }\n\n return false;\n }).reverse().forEach(function (tag) {\n return approvedTags.push(tag);\n });\n\n // Update seen tags with tags from this instance\n var keys = Object.keys(instanceSeenTags);\n for (var i = 0; i < keys.length; i++) {\n var attributeKey = keys[i];\n var tagUnion = objectAssign({}, approvedSeenTags[attributeKey], instanceSeenTags[attributeKey]);\n\n approvedSeenTags[attributeKey] = tagUnion;\n }\n\n return approvedTags;\n }, []).reverse();\n};\n\nvar getInnermostProperty = function getInnermostProperty(propsList, property) {\n for (var i = propsList.length - 1; i >= 0; i--) {\n var props = propsList[i];\n\n if (props.hasOwnProperty(property)) {\n return props[property];\n }\n }\n\n return null;\n};\n\nvar reducePropsToState = function reducePropsToState(propsList) {\n return {\n baseTag: getBaseTagFromPropsList([TAG_PROPERTIES.HREF, TAG_PROPERTIES.TARGET], propsList),\n bodyAttributes: getAttributesFromPropsList(ATTRIBUTE_NAMES.BODY, propsList),\n defer: getInnermostProperty(propsList, HELMET_PROPS.DEFER),\n encode: getInnermostProperty(propsList, HELMET_PROPS.ENCODE_SPECIAL_CHARACTERS),\n htmlAttributes: getAttributesFromPropsList(ATTRIBUTE_NAMES.HTML, propsList),\n linkTags: getTagsFromPropsList(TAG_NAMES.LINK, [TAG_PROPERTIES.REL, TAG_PROPERTIES.HREF], propsList),\n metaTags: getTagsFromPropsList(TAG_NAMES.META, [TAG_PROPERTIES.NAME, TAG_PROPERTIES.CHARSET, TAG_PROPERTIES.HTTPEQUIV, TAG_PROPERTIES.PROPERTY, TAG_PROPERTIES.ITEM_PROP], propsList),\n noscriptTags: getTagsFromPropsList(TAG_NAMES.NOSCRIPT, [TAG_PROPERTIES.INNER_HTML], propsList),\n onChangeClientState: getOnChangeClientState(propsList),\n scriptTags: getTagsFromPropsList(TAG_NAMES.SCRIPT, [TAG_PROPERTIES.SRC, TAG_PROPERTIES.INNER_HTML], propsList),\n styleTags: getTagsFromPropsList(TAG_NAMES.STYLE, [TAG_PROPERTIES.CSS_TEXT], propsList),\n title: getTitleFromPropsList(propsList),\n titleAttributes: getAttributesFromPropsList(ATTRIBUTE_NAMES.TITLE, propsList)\n };\n};\n\nvar rafPolyfill = function () {\n var clock = Date.now();\n\n return function (callback) {\n var currentTime = Date.now();\n\n if (currentTime - clock > 16) {\n clock = currentTime;\n callback(currentTime);\n } else {\n setTimeout(function () {\n rafPolyfill(callback);\n }, 0);\n }\n };\n}();\n\nvar cafPolyfill = function cafPolyfill(id) {\n return clearTimeout(id);\n};\n\nvar requestAnimationFrame = typeof window !== \"undefined\" ? window.requestAnimationFrame && window.requestAnimationFrame.bind(window) || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || rafPolyfill : global.requestAnimationFrame || rafPolyfill;\n\nvar cancelAnimationFrame = typeof window !== \"undefined\" ? window.cancelAnimationFrame || window.webkitCancelAnimationFrame || window.mozCancelAnimationFrame || cafPolyfill : global.cancelAnimationFrame || cafPolyfill;\n\nvar warn = function warn(msg) {\n return console && typeof console.warn === \"function\" && console.warn(msg);\n};\n\nvar _helmetCallback = null;\n\nvar handleClientStateChange = function handleClientStateChange(newState) {\n if (_helmetCallback) {\n cancelAnimationFrame(_helmetCallback);\n }\n\n if (newState.defer) {\n _helmetCallback = requestAnimationFrame(function () {\n commitTagChanges(newState, function () {\n _helmetCallback = null;\n });\n });\n } else {\n commitTagChanges(newState);\n _helmetCallback = null;\n }\n};\n\nvar commitTagChanges = function commitTagChanges(newState, cb) {\n var baseTag = newState.baseTag,\n bodyAttributes = newState.bodyAttributes,\n htmlAttributes = newState.htmlAttributes,\n linkTags = newState.linkTags,\n metaTags = newState.metaTags,\n noscriptTags = newState.noscriptTags,\n onChangeClientState = newState.onChangeClientState,\n scriptTags = newState.scriptTags,\n styleTags = newState.styleTags,\n title = newState.title,\n titleAttributes = newState.titleAttributes;\n\n updateAttributes(TAG_NAMES.BODY, bodyAttributes);\n updateAttributes(TAG_NAMES.HTML, htmlAttributes);\n\n updateTitle(title, titleAttributes);\n\n var tagUpdates = {\n baseTag: updateTags(TAG_NAMES.BASE, baseTag),\n linkTags: updateTags(TAG_NAMES.LINK, linkTags),\n metaTags: updateTags(TAG_NAMES.META, metaTags),\n noscriptTags: updateTags(TAG_NAMES.NOSCRIPT, noscriptTags),\n scriptTags: updateTags(TAG_NAMES.SCRIPT, scriptTags),\n styleTags: updateTags(TAG_NAMES.STYLE, styleTags)\n };\n\n var addedTags = {};\n var removedTags = {};\n\n Object.keys(tagUpdates).forEach(function (tagType) {\n var _tagUpdates$tagType = tagUpdates[tagType],\n newTags = _tagUpdates$tagType.newTags,\n oldTags = _tagUpdates$tagType.oldTags;\n\n\n if (newTags.length) {\n addedTags[tagType] = newTags;\n }\n if (oldTags.length) {\n removedTags[tagType] = tagUpdates[tagType].oldTags;\n }\n });\n\n cb && cb();\n\n onChangeClientState(newState, addedTags, removedTags);\n};\n\nvar flattenArray = function flattenArray(possibleArray) {\n return Array.isArray(possibleArray) ? possibleArray.join(\"\") : possibleArray;\n};\n\nvar updateTitle = function updateTitle(title, attributes) {\n if (typeof title !== \"undefined\" && document.title !== title) {\n document.title = flattenArray(title);\n }\n\n updateAttributes(TAG_NAMES.TITLE, attributes);\n};\n\nvar updateAttributes = function updateAttributes(tagName, attributes) {\n var elementTag = document.getElementsByTagName(tagName)[0];\n\n if (!elementTag) {\n return;\n }\n\n var helmetAttributeString = elementTag.getAttribute(HELMET_ATTRIBUTE);\n var helmetAttributes = helmetAttributeString ? helmetAttributeString.split(\",\") : [];\n var attributesToRemove = [].concat(helmetAttributes);\n var attributeKeys = Object.keys(attributes);\n\n for (var i = 0; i < attributeKeys.length; i++) {\n var attribute = attributeKeys[i];\n var value = attributes[attribute] || \"\";\n\n if (elementTag.getAttribute(attribute) !== value) {\n elementTag.setAttribute(attribute, value);\n }\n\n if (helmetAttributes.indexOf(attribute) === -1) {\n helmetAttributes.push(attribute);\n }\n\n var indexToSave = attributesToRemove.indexOf(attribute);\n if (indexToSave !== -1) {\n attributesToRemove.splice(indexToSave, 1);\n }\n }\n\n for (var _i = attributesToRemove.length - 1; _i >= 0; _i--) {\n elementTag.removeAttribute(attributesToRemove[_i]);\n }\n\n if (helmetAttributes.length === attributesToRemove.length) {\n elementTag.removeAttribute(HELMET_ATTRIBUTE);\n } else if (elementTag.getAttribute(HELMET_ATTRIBUTE) !== attributeKeys.join(\",\")) {\n elementTag.setAttribute(HELMET_ATTRIBUTE, attributeKeys.join(\",\"));\n }\n};\n\nvar updateTags = function updateTags(type, tags) {\n var headElement = document.head || document.querySelector(TAG_NAMES.HEAD);\n var tagNodes = headElement.querySelectorAll(type + \"[\" + HELMET_ATTRIBUTE + \"]\");\n var oldTags = Array.prototype.slice.call(tagNodes);\n var newTags = [];\n var indexToDelete = void 0;\n\n if (tags && tags.length) {\n tags.forEach(function (tag) {\n var newElement = document.createElement(type);\n\n for (var attribute in tag) {\n if (tag.hasOwnProperty(attribute)) {\n if (attribute === TAG_PROPERTIES.INNER_HTML) {\n newElement.innerHTML = tag.innerHTML;\n } else if (attribute === TAG_PROPERTIES.CSS_TEXT) {\n if (newElement.styleSheet) {\n newElement.styleSheet.cssText = tag.cssText;\n } else {\n newElement.appendChild(document.createTextNode(tag.cssText));\n }\n } else {\n var value = typeof tag[attribute] === \"undefined\" ? \"\" : tag[attribute];\n newElement.setAttribute(attribute, value);\n }\n }\n }\n\n newElement.setAttribute(HELMET_ATTRIBUTE, \"true\");\n\n // Remove a duplicate tag from domTagstoRemove, so it isn't cleared.\n if (oldTags.some(function (existingTag, index) {\n indexToDelete = index;\n return newElement.isEqualNode(existingTag);\n })) {\n oldTags.splice(indexToDelete, 1);\n } else {\n newTags.push(newElement);\n }\n });\n }\n\n oldTags.forEach(function (tag) {\n return tag.parentNode.removeChild(tag);\n });\n newTags.forEach(function (tag) {\n return headElement.appendChild(tag);\n });\n\n return {\n oldTags: oldTags,\n newTags: newTags\n };\n};\n\nvar generateElementAttributesAsString = function generateElementAttributesAsString(attributes) {\n return Object.keys(attributes).reduce(function (str, key) {\n var attr = typeof attributes[key] !== \"undefined\" ? key + \"=\\\"\" + attributes[key] + \"\\\"\" : \"\" + key;\n return str ? str + \" \" + attr : attr;\n }, \"\");\n};\n\nvar generateTitleAsString = function generateTitleAsString(type, title, attributes, encode) {\n var attributeString = generateElementAttributesAsString(attributes);\n var flattenedTitle = flattenArray(title);\n return attributeString ? \"<\" + type + \" \" + HELMET_ATTRIBUTE + \"=\\\"true\\\" \" + attributeString + \">\" + encodeSpecialCharacters(flattenedTitle, encode) + \"\" : \"<\" + type + \" \" + HELMET_ATTRIBUTE + \"=\\\"true\\\">\" + encodeSpecialCharacters(flattenedTitle, encode) + \"\";\n};\n\nvar generateTagsAsString = function generateTagsAsString(type, tags, encode) {\n return tags.reduce(function (str, tag) {\n var attributeHtml = Object.keys(tag).filter(function (attribute) {\n return !(attribute === TAG_PROPERTIES.INNER_HTML || attribute === TAG_PROPERTIES.CSS_TEXT);\n }).reduce(function (string, attribute) {\n var attr = typeof tag[attribute] === \"undefined\" ? attribute : attribute + \"=\\\"\" + encodeSpecialCharacters(tag[attribute], encode) + \"\\\"\";\n return string ? string + \" \" + attr : attr;\n }, \"\");\n\n var tagContent = tag.innerHTML || tag.cssText || \"\";\n\n var isSelfClosing = SELF_CLOSING_TAGS.indexOf(type) === -1;\n\n return str + \"<\" + type + \" \" + HELMET_ATTRIBUTE + \"=\\\"true\\\" \" + attributeHtml + (isSelfClosing ? \"/>\" : \">\" + tagContent + \"\");\n }, \"\");\n};\n\nvar convertElementAttributestoReactProps = function convertElementAttributestoReactProps(attributes) {\n var initProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n return Object.keys(attributes).reduce(function (obj, key) {\n obj[REACT_TAG_MAP[key] || key] = attributes[key];\n return obj;\n }, initProps);\n};\n\nvar convertReactPropstoHtmlAttributes = function convertReactPropstoHtmlAttributes(props) {\n var initAttributes = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n return Object.keys(props).reduce(function (obj, key) {\n obj[HTML_TAG_MAP[key] || key] = props[key];\n return obj;\n }, initAttributes);\n};\n\nvar generateTitleAsReactComponent = function generateTitleAsReactComponent(type, title, attributes) {\n var _initProps;\n\n // assigning into an array to define toString function on it\n var initProps = (_initProps = {\n key: title\n }, _initProps[HELMET_ATTRIBUTE] = true, _initProps);\n var props = convertElementAttributestoReactProps(attributes, initProps);\n\n return [React.createElement(TAG_NAMES.TITLE, props, title)];\n};\n\nvar generateTagsAsReactComponent = function generateTagsAsReactComponent(type, tags) {\n return tags.map(function (tag, i) {\n var _mappedTag;\n\n var mappedTag = (_mappedTag = {\n key: i\n }, _mappedTag[HELMET_ATTRIBUTE] = true, _mappedTag);\n\n Object.keys(tag).forEach(function (attribute) {\n var mappedAttribute = REACT_TAG_MAP[attribute] || attribute;\n\n if (mappedAttribute === TAG_PROPERTIES.INNER_HTML || mappedAttribute === TAG_PROPERTIES.CSS_TEXT) {\n var content = tag.innerHTML || tag.cssText;\n mappedTag.dangerouslySetInnerHTML = { __html: content };\n } else {\n mappedTag[mappedAttribute] = tag[attribute];\n }\n });\n\n return React.createElement(type, mappedTag);\n });\n};\n\nvar getMethodsForTag = function getMethodsForTag(type, tags, encode) {\n switch (type) {\n case TAG_NAMES.TITLE:\n return {\n toComponent: function toComponent() {\n return generateTitleAsReactComponent(type, tags.title, tags.titleAttributes, encode);\n },\n toString: function toString() {\n return generateTitleAsString(type, tags.title, tags.titleAttributes, encode);\n }\n };\n case ATTRIBUTE_NAMES.BODY:\n case ATTRIBUTE_NAMES.HTML:\n return {\n toComponent: function toComponent() {\n return convertElementAttributestoReactProps(tags);\n },\n toString: function toString() {\n return generateElementAttributesAsString(tags);\n }\n };\n default:\n return {\n toComponent: function toComponent() {\n return generateTagsAsReactComponent(type, tags);\n },\n toString: function toString() {\n return generateTagsAsString(type, tags, encode);\n }\n };\n }\n};\n\nvar mapStateOnServer = function mapStateOnServer(_ref) {\n var baseTag = _ref.baseTag,\n bodyAttributes = _ref.bodyAttributes,\n encode = _ref.encode,\n htmlAttributes = _ref.htmlAttributes,\n linkTags = _ref.linkTags,\n metaTags = _ref.metaTags,\n noscriptTags = _ref.noscriptTags,\n scriptTags = _ref.scriptTags,\n styleTags = _ref.styleTags,\n _ref$title = _ref.title,\n title = _ref$title === undefined ? \"\" : _ref$title,\n titleAttributes = _ref.titleAttributes;\n return {\n base: getMethodsForTag(TAG_NAMES.BASE, baseTag, encode),\n bodyAttributes: getMethodsForTag(ATTRIBUTE_NAMES.BODY, bodyAttributes, encode),\n htmlAttributes: getMethodsForTag(ATTRIBUTE_NAMES.HTML, htmlAttributes, encode),\n link: getMethodsForTag(TAG_NAMES.LINK, linkTags, encode),\n meta: getMethodsForTag(TAG_NAMES.META, metaTags, encode),\n noscript: getMethodsForTag(TAG_NAMES.NOSCRIPT, noscriptTags, encode),\n script: getMethodsForTag(TAG_NAMES.SCRIPT, scriptTags, encode),\n style: getMethodsForTag(TAG_NAMES.STYLE, styleTags, encode),\n title: getMethodsForTag(TAG_NAMES.TITLE, { title: title, titleAttributes: titleAttributes }, encode)\n };\n};\n\nvar Helmet = function Helmet(Component) {\n var _class, _temp;\n\n return _temp = _class = function (_React$Component) {\n inherits(HelmetWrapper, _React$Component);\n\n function HelmetWrapper() {\n classCallCheck(this, HelmetWrapper);\n return possibleConstructorReturn(this, _React$Component.apply(this, arguments));\n }\n\n HelmetWrapper.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps) {\n return !isEqual(this.props, nextProps);\n };\n\n HelmetWrapper.prototype.mapNestedChildrenToProps = function mapNestedChildrenToProps(child, nestedChildren) {\n if (!nestedChildren) {\n return null;\n }\n\n switch (child.type) {\n case TAG_NAMES.SCRIPT:\n case TAG_NAMES.NOSCRIPT:\n return {\n innerHTML: nestedChildren\n };\n\n case TAG_NAMES.STYLE:\n return {\n cssText: nestedChildren\n };\n }\n\n throw new Error(\"<\" + child.type + \" /> elements are self-closing and can not contain children. Refer to our API for more information.\");\n };\n\n HelmetWrapper.prototype.flattenArrayTypeChildren = function flattenArrayTypeChildren(_ref) {\n var _babelHelpers$extends;\n\n var child = _ref.child,\n arrayTypeChildren = _ref.arrayTypeChildren,\n newChildProps = _ref.newChildProps,\n nestedChildren = _ref.nestedChildren;\n\n return _extends({}, arrayTypeChildren, (_babelHelpers$extends = {}, _babelHelpers$extends[child.type] = [].concat(arrayTypeChildren[child.type] || [], [_extends({}, newChildProps, this.mapNestedChildrenToProps(child, nestedChildren))]), _babelHelpers$extends));\n };\n\n HelmetWrapper.prototype.mapObjectTypeChildren = function mapObjectTypeChildren(_ref2) {\n var _babelHelpers$extends2, _babelHelpers$extends3;\n\n var child = _ref2.child,\n newProps = _ref2.newProps,\n newChildProps = _ref2.newChildProps,\n nestedChildren = _ref2.nestedChildren;\n\n switch (child.type) {\n case TAG_NAMES.TITLE:\n return _extends({}, newProps, (_babelHelpers$extends2 = {}, _babelHelpers$extends2[child.type] = nestedChildren, _babelHelpers$extends2.titleAttributes = _extends({}, newChildProps), _babelHelpers$extends2));\n\n case TAG_NAMES.BODY:\n return _extends({}, newProps, {\n bodyAttributes: _extends({}, newChildProps)\n });\n\n case TAG_NAMES.HTML:\n return _extends({}, newProps, {\n htmlAttributes: _extends({}, newChildProps)\n });\n }\n\n return _extends({}, newProps, (_babelHelpers$extends3 = {}, _babelHelpers$extends3[child.type] = _extends({}, newChildProps), _babelHelpers$extends3));\n };\n\n HelmetWrapper.prototype.mapArrayTypeChildrenToProps = function mapArrayTypeChildrenToProps(arrayTypeChildren, newProps) {\n var newFlattenedProps = _extends({}, newProps);\n\n Object.keys(arrayTypeChildren).forEach(function (arrayChildName) {\n var _babelHelpers$extends4;\n\n newFlattenedProps = _extends({}, newFlattenedProps, (_babelHelpers$extends4 = {}, _babelHelpers$extends4[arrayChildName] = arrayTypeChildren[arrayChildName], _babelHelpers$extends4));\n });\n\n return newFlattenedProps;\n };\n\n HelmetWrapper.prototype.warnOnInvalidChildren = function warnOnInvalidChildren(child, nestedChildren) {\n if (process.env.NODE_ENV !== \"production\") {\n if (!VALID_TAG_NAMES.some(function (name) {\n return child.type === name;\n })) {\n if (typeof child.type === \"function\") {\n return warn(\"You may be attempting to nest components within each other, which is not allowed. Refer to our API for more information.\");\n }\n\n return warn(\"Only elements types \" + VALID_TAG_NAMES.join(\", \") + \" are allowed. Helmet does not support rendering <\" + child.type + \"> elements. Refer to our API for more information.\");\n }\n\n if (nestedChildren && typeof nestedChildren !== \"string\" && (!Array.isArray(nestedChildren) || nestedChildren.some(function (nestedChild) {\n return typeof nestedChild !== \"string\";\n }))) {\n throw new Error(\"Helmet expects a string as a child of <\" + child.type + \">. Did you forget to wrap your children in braces? ( <\" + child.type + \">{``} ) Refer to our API for more information.\");\n }\n }\n\n return true;\n };\n\n HelmetWrapper.prototype.mapChildrenToProps = function mapChildrenToProps(children, newProps) {\n var _this2 = this;\n\n var arrayTypeChildren = {};\n\n React.Children.forEach(children, function (child) {\n if (!child || !child.props) {\n return;\n }\n\n var _child$props = child.props,\n nestedChildren = _child$props.children,\n childProps = objectWithoutProperties(_child$props, [\"children\"]);\n\n var newChildProps = convertReactPropstoHtmlAttributes(childProps);\n\n _this2.warnOnInvalidChildren(child, nestedChildren);\n\n switch (child.type) {\n case TAG_NAMES.LINK:\n case TAG_NAMES.META:\n case TAG_NAMES.NOSCRIPT:\n case TAG_NAMES.SCRIPT:\n case TAG_NAMES.STYLE:\n arrayTypeChildren = _this2.flattenArrayTypeChildren({\n child: child,\n arrayTypeChildren: arrayTypeChildren,\n newChildProps: newChildProps,\n nestedChildren: nestedChildren\n });\n break;\n\n default:\n newProps = _this2.mapObjectTypeChildren({\n child: child,\n newProps: newProps,\n newChildProps: newChildProps,\n nestedChildren: nestedChildren\n });\n break;\n }\n });\n\n newProps = this.mapArrayTypeChildrenToProps(arrayTypeChildren, newProps);\n return newProps;\n };\n\n HelmetWrapper.prototype.render = function render() {\n var _props = this.props,\n children = _props.children,\n props = objectWithoutProperties(_props, [\"children\"]);\n\n var newProps = _extends({}, props);\n\n if (children) {\n newProps = this.mapChildrenToProps(children, newProps);\n }\n\n return React.createElement(Component, newProps);\n };\n\n createClass(HelmetWrapper, null, [{\n key: \"canUseDOM\",\n\n\n // Component.peek comes from react-side-effect:\n // For testing, you may use a static peek() method available on the returned component.\n // It lets you get the current state without resetting the mounted instance stack.\n // Don’t use it for anything other than testing.\n\n /**\n * @param {Object} base: {\"target\": \"_blank\", \"href\": \"http://mysite.com/\"}\n * @param {Object} bodyAttributes: {\"className\": \"root\"}\n * @param {String} defaultTitle: \"Default Title\"\n * @param {Boolean} defer: true\n * @param {Boolean} encodeSpecialCharacters: true\n * @param {Object} htmlAttributes: {\"lang\": \"en\", \"amp\": undefined}\n * @param {Array} link: [{\"rel\": \"canonical\", \"href\": \"http://mysite.com/example\"}]\n * @param {Array} meta: [{\"name\": \"description\", \"content\": \"Test description\"}]\n * @param {Array} noscript: [{\"innerHTML\": \" console.log(newState)\"\n * @param {Array} script: [{\"type\": \"text/javascript\", \"src\": \"http://mysite.com/js/test.js\"}]\n * @param {Array} style: [{\"type\": \"text/css\", \"cssText\": \"div { display: block; color: blue; }\"}]\n * @param {String} title: \"Title\"\n * @param {Object} titleAttributes: {\"itemprop\": \"name\"}\n * @param {String} titleTemplate: \"MySite.com - %s\"\n */\n set: function set$$1(canUseDOM) {\n Component.canUseDOM = canUseDOM;\n }\n }]);\n return HelmetWrapper;\n }(React.Component), _class.propTypes = {\n base: PropTypes.object,\n bodyAttributes: PropTypes.object,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n defaultTitle: PropTypes.string,\n defer: PropTypes.bool,\n encodeSpecialCharacters: PropTypes.bool,\n htmlAttributes: PropTypes.object,\n link: PropTypes.arrayOf(PropTypes.object),\n meta: PropTypes.arrayOf(PropTypes.object),\n noscript: PropTypes.arrayOf(PropTypes.object),\n onChangeClientState: PropTypes.func,\n script: PropTypes.arrayOf(PropTypes.object),\n style: PropTypes.arrayOf(PropTypes.object),\n title: PropTypes.string,\n titleAttributes: PropTypes.object,\n titleTemplate: PropTypes.string\n }, _class.defaultProps = {\n defer: true,\n encodeSpecialCharacters: true\n }, _class.peek = Component.peek, _class.rewind = function () {\n var mappedState = Component.rewind();\n if (!mappedState) {\n // provide fallback if mappedState is undefined\n mappedState = mapStateOnServer({\n baseTag: [],\n bodyAttributes: {},\n encodeSpecialCharacters: true,\n htmlAttributes: {},\n linkTags: [],\n metaTags: [],\n noscriptTags: [],\n scriptTags: [],\n styleTags: [],\n title: \"\",\n titleAttributes: {}\n });\n }\n\n return mappedState;\n }, _temp;\n};\n\nvar NullComponent = function NullComponent() {\n return null;\n};\n\nvar HelmetSideEffects = withSideEffect(reducePropsToState, handleClientStateChange, mapStateOnServer)(NullComponent);\n\nvar HelmetExport = Helmet(HelmetSideEffects);\nHelmetExport.renderStatic = HelmetExport.rewind;\n\nexport default HelmetExport;\nexport { HelmetExport as Helmet };\n","import { useEffect, useState } from \"react\";\nimport { isMobile } from \"react-device-detect\";\n\nconst useIsMobile = () => {\n const [isMobileView, setIsMobileView] = useState(false);\n useEffect(() => {\n setIsMobileView(isMobile);\n }, []);\n\n return isMobileView;\n};\n\nexport default useIsMobile;\n","import { useEffect, useState } from \"react\"\n\nconst useScrollPosition = () => {\n const [scrollPosition, setPosition] = useState({ scrollX: 0, scrollY: 0 })\n\n useEffect(() => {\n function updatePosition() {\n setPosition({ scrollX: window.scrollX, scrollY: window.scrollY })\n }\n\n window.addEventListener(\"scroll\", updatePosition)\n updatePosition()\n\n return () => window.removeEventListener(\"scroll\", updatePosition)\n }, [])\n\n return scrollPosition\n}\n\nexport default useScrollPosition\n","import React, { useEffect, useState } from \"react\";\nimport { useLocation } from \"@reach/router\";\nimport { isAndroid, isDesktop, isIOS, isTablet } from \"react-device-detect\";\nimport { replaceByDict } from \"../utilities/replace-by-dict\";\nimport useQueryParams from \"query-params-hook\";\nimport { graphql, useStaticQuery } from \"gatsby\";\n\nconst AdjustLink = ({\n externalUrl,\n topMenu,\n slotPage,\n children,\n className,\n menuUrl,\n target,\n}: {\n externalUrl?: string;\n topMenu?: boolean;\n slotPage?: boolean;\n className?: string;\n children: any;\n menuUrl?: string;\n target?: string;\n}) => {\n const { pathname } = useLocation();\n const {\n lp: lpPages,\n campaignid,\n adgroupid,\n keyword,\n adid,\n lpurl,\n gclid,\n } = useQueryParams();\n const isLpPage = lpPages === \"true\";\n\n const data = useStaticQuery(graphql`\n query {\n allContentfulComposePage {\n nodes {\n slug\n adjustLink {\n adjustLink\n }\n }\n }\n }\n `) as any;\n\n const adjustLinkData = data.allContentfulComposePage.nodes.find(\n (node: any) => `/${node.slug}/` === pathname\n );\n const adjustLink = adjustLinkData?.adjustLink?.adjustLink;\n\n if (isDesktop) return children;\n\n const [link, setLink] = useState(\"\");\n\n useEffect(() => {\n // specific case for /blog/...\n if (pathname.includes(\"/blog\")) {\n setLink(\"https://jackpotparty.go.link?adj_t=1fwi00co_1fpdipro_1fohsk1v\");\n return;\n }\n if (adjustLink) {\n setLink(adjustLink);\n return;\n }\n if (!!externalUrl) {\n const replaceHashed = {\n campaignid,\n adgroupid,\n keyword,\n adid,\n lpurl,\n gclid,\n };\n setLink(replaceByDict(externalUrl, replaceHashed));\n return;\n }\n if (lpPages === \"true\") {\n const replaceHashed = {\n campaignid,\n adgroupid,\n keyword,\n adid,\n lpurl,\n gclid,\n };\n setLink(\n replaceByDict(\n \"https://app.adjust.com/zuoayv2_imr1p88?campaign={campaignid}&adgroup={adgroupid}&creative={keyword}_{adid}&lpurl={lpurl}&external_click_id={gclid}\",\n replaceHashed\n )\n );\n return;\n }\n if (topMenu && pathname.includes(\"/blog\")) {\n setLink(\"https://app.adjust.com/67lpxp7_3k0r255_v3zmbmm\");\n } else if (topMenu) {\n setLink(menuUrl ?? \"https://app.adjust.com/p0m9e6u_axx4qia_ygfkr74\");\n } else if (slotPage) {\n setLink(\"https://app.adjust.com/4j0a3j4_b9tpa2j_cxz6pvi\");\n } else {\n // Hero Link per pathname\n if (pathname === \"/\") {\n if (isIOS && isTablet) {\n setLink(\"https://app.adjust.com/69lf5i0_rjwfk4i_vr3ktty\");\n } else {\n setLink(\"https://app.adjust.com/rjwfk4i_69lf5i0_vr3ktty\");\n }\n } else if (pathname.includes(\"/mobile-slots\")) {\n if (isIOS && isTablet) {\n setLink(\"https://app.adjust.com/6gdfuli_l16rniu_96lz90w\");\n } else {\n setLink(\"https://app.adjust.com/l16rniu_6gdfuli_96lz90w\");\n }\n } else if (pathname.includes(\"/free-coins\")) {\n if (isIOS && isTablet) {\n setLink(\"https://app.adjust.com/e28wryg_2l9k5i0_n0zgeae\");\n } else {\n setLink(\"https://app.adjust.com/2l9k5q2_e28wryg_n0zgeae\");\n }\n } else if (pathname.includes(\"/slot-games\")) {\n if (isIOS && isTablet) {\n setLink(\"https://app.adjust.com/pgxvdd9\");\n } else {\n setLink(\"https://app.adjust.com/pgxvdd9_caxlvm7_cy2k7cn\");\n }\n } else {\n setLink(\n isAndroid\n ? \"https://app.adjust.com/113z4xk4\"\n : \"https://app.adjust.com/11uy0jlw\"\n );\n }\n }\n }, [\n adjustLink,\n pathname,\n externalUrl,\n lpPages,\n campaignid,\n adgroupid,\n keyword,\n adid,\n lpurl,\n gclid,\n topMenu,\n slotPage,\n menuUrl,\n adjustLink,\n ]);\n\n return (\n isLpPage && (window as any).gtag_report_conversion?.()}\n target={target}\n >\n {children}\n \n );\n};\n\nexport default AdjustLink;\n"],"names":["hasElementType","Element","hasMap","Map","hasSet","Set","hasArrayBuffer","ArrayBuffer","isView","equal","a","b","constructor","length","i","keys","it","Array","isArray","size","entries","next","done","has","value","get","RegExp","source","flags","valueOf","Object","prototype","toString","hasOwnProperty","call","$$typeof","module","exports","error","message","match","console","warn","Arrow","React","viewBox","fill","width","height","fillRule","d","clipRule","_ref","openMobileMenu","onOpenMenuClick","pathname","useLocation","className","onClick","isDesktop","navigate","Link","to","StaticImage","src","alt","__imageData","require","href","target","includes","window","open","SciplayGames","showTitles","ex","React__default","UAParser","ClientUAInstance","browser","getBrowser","cpu","getCPU","device","getDevice","engine","getEngine","os","getOS","ua","getUA","setUa","userAgentString","setUA","parseUserAgent","userAgent","UserAgentInstance","UA","setUserAgent","UAHelper","freeze","ownKeys","object","enumerableOnly","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_typeof","obj","Symbol","iterator","_defineProperties","props","descriptor","configurable","writable","defineProperty","key","_defineProperty","_extends","assign","arguments","this","_getPrototypeOf","o","setPrototypeOf","getPrototypeOf","__proto__","_setPrototypeOf","p","_objectWithoutProperties","excluded","sourceKeys","indexOf","_objectWithoutPropertiesLoose","sourceSymbolKeys","propertyIsEnumerable","_assertThisInitialized","self","ReferenceError","_slicedToArray","arr","_arrayWithHoles","_i","_s","_e","_arr","_n","_d","err","_iterableToArrayLimit","minLen","_arrayLikeToArray","n","slice","name","from","test","_unsupportedIterableToArray","TypeError","_nonIterableRest","len","arr2","DeviceTypes","undefined","BrowserTypes","Chrome","Firefox","Opera","Yandex","Safari","InternetExplorer","Edge","Chromium","Ie","MobileSafari","EdgeChromium","MIUI","SamsungBrowser","OsTypes","IOS","Android","WindowsPhone","Windows","MAC_OS","InitialDeviceTypes","isMobile","isTablet","isBrowser","isSmartTV","isConsole","isWearable","setDefaults","getNavigatorInstance","navigator","isIOS13Check","type","nav","platform","maxTouchPoints","MSStream","mobilePayload","forEach","getOwnPropertyDescriptors","defineProperties","_objectSpread2","vendor","model","osVersion","version","isMobileType","isTabletType","_ref2","isMobileAndTabletType","_ref3","isSmartTVType","_ref4","isBrowserType","_ref5","isWearableType","_ref6","isConsoleType","_ref7","isEmbeddedType","_ref8","getMobileVendor","_ref9","getMobileModel","_ref10","getDeviceType","_ref11","isAndroidType","_ref12","isWindowsType","_ref13","isMacOsType","_ref14","isWinPhoneType","_ref15","isIOSType","_ref16","getOsVersion","_ref17","getOsName","_ref18","isChromeType","_ref19","isFirefoxType","_ref20","isChromiumType","_ref21","isEdgeType","_ref22","isYandexType","_ref23","isSafariType","_ref24","isMobileSafariType","_ref25","isOperaType","_ref26","isIEType","_ref27","isMIUIType","_ref28","isSamsungBrowserType","_ref29","getBrowserFullVersion","_ref30","getBrowserVersion","_ref31","major","getBrowserName","_ref32","getEngineName","_ref33","getEngineVersion","_ref34","isElectronType","toLowerCase","isEdgeChromiumType","getIOS13","getIPad13","getIphone13","getIPod13","getUseragent","userAg","buildSelectorsObject","options","isEmbedded","isMobileSafari","isChromium","isMobileOnly","isAndroid","isWinPhone","isIOS","isChrome","isFirefox","isSafari","isOpera","isIE","osName","fullBrowserVersion","browserVersion","browserName","mobileVendor","mobileModel","engineName","engineVersion","isEdge","isYandex","deviceType","isIOS13","isIPad13","isIPhone13","isIPod13","isElectron","isEdgeChromium","isLegacyEdge","isWindows","isMacOs","isMIUI","isSamsungBrowser","useDeviceData","hookUserAgent","onDownloadClick","hideOnScroll","light_version","scrollY","useScrollPosition","isScrolled","setIsScrolled","useState","topButton","setTopbutton","useEffect","NavItems","find","item","N","HTMLImageElement","W","e","t","Boolean","images","fallback","gatsbyImageData","gatsbyImage","childImageSharp","j","r","u","loading","shouldLoad","style","opacity","O","s","l","backgroundColor","position","top","left","bottom","right","objectFit","objectPosition","transition","z","D","layout","paddingTop","maxWidth","display","role","A","children","c","q","P","H","srcSet","decoding","G","sources","sizes","map","media","V","propTypes","isRequired","displayName","B","F","Error","U","Y","_len","_key","h","concat","X","image","J","Z","K","Q","ee","te","as","class","g","onStartLoad","onLoad","m","onError","f","w","y","v","E","M","k","S","$","I","JSON","stringify","x","then","renderImageToString","swapPlaceholderImage","current","querySelector","complete","wasCached","setTimeout","removeAttribute","addEventListener","removeEventListener","add","innerHTML","isLoading","isLoaded","requestAnimationFrame","cancelAnimationFrame","ref","dangerouslySetInnerHTML","__html","suppressHydrationWarning","ae","ie","re","_len2","_key2","ne","se","oe","__error","canUseDOM","document","createElement","reducePropsToState","handleStateChangeOnClient","mapStateOnServer","WrappedComponent","state","mountedInstances","emitChange","instance","SideEffect","_PureComponent","subClass","superClass","create","peek","rewind","recordedState","_proto","UNSAFE_componentWillMount","componentDidUpdate","componentWillUnmount","index","splice","render","PureComponent","getDisplayName","Burger","color","direction","distance","duration","easing","hideOutline","label","lines","onToggle","rounded","toggle","toggled","disabled","animateOnMount","toggledInternal","toggleInternal","mounted","setMounted","Math","max","min","room","round","barHeightRaw","barHeight","marginRaw","margin","topOffset","move","parseFloat","toFixed","time","burgerStyles","cursor","userSelect","barStyles","background","toggleFunction","isToggled","getIsToggled","handler","isLeft","Spin","onKeyUp","transform","tabIndex","shouldShowBanner","lpV2","page_version","useQueryParams","showNav","setShowNav","menuPosition","setMenuPosition","setOpenMobileMenu","topMobileMenuRef","useRef","Helmet","bodyAttributes","menuItem","AdjustLink","topMenu","menuUrl","Hamburger","show","navRect","getBoundingClientRect","topMobileMenuHeight","toggleNav","DEFAULT_VALUES","desktop","callBack","links","stores","setStores","Google","Apple","Amazon","Facebook","_DEFAULT_VALUES$find","mobile","camelCase","input","pascalCase","trim","join","toUpperCase","string","isLastCharLower","isLastCharUpper","isLastLastCharUpper","character","preserveCamelCase","replace","_","p1","charAt","params","URLSearchParams","location","search","Proxy","prop","FUNC_TYPE","UNDEF_TYPE","OBJ_TYPE","STR_TYPE","MAJOR","MODEL","NAME","TYPE","VENDOR","VERSION","ARCHITECTURE","CONSOLE","MOBILE","TABLET","SMARTTV","WEARABLE","EMBEDDED","AMAZON","APPLE","ASUS","BLACKBERRY","BROWSER","CHROME","FIREFOX","GOOGLE","HUAWEI","LG","MICROSOFT","MOTOROLA","OPERA","SAMSUNG","SHARP","SONY","XIAOMI","ZEBRA","FACEBOOK","CHROMIUM_OS","SUFFIX_BROWSER","enumerize","enums","str1","str2","lowerize","str","substring","rgxMapper","arrays","matches","regex","exec","strMapper","windowsVersionMap","ME","XP","Vista","RT","regexes","tablet","EDGE","extensions","getResult","_navigator","_ua","_uach","userAgentData","_rgxmap","mergedRegexes","extend","_isSelfNav","_browser","split","brave","isBrave","_cpu","_device","standalone","_engine","_os","CPU","DEVICE","ENGINE","OS","jQuery","Zepto","parser","set","result","replaceByDict","dict","searchRegExp","_window","isLpPage","onCloseClick","gtag","campaignid","adgroupid","keyword","adid","lpurl","gclid","replaceHashed","useMemo","storesLinks","Stores","useIsMobile","games","GFC","url","quality","title","QHS","HSC","BINGO","MS","BG","SPA","gameKey","game","setIsLoading","lightVersion","setLightVersion","Date","getFullYear","clock","Component","_class","_temp","ATTRIBUTE_NAMES","TAG_NAMES","BASE","BODY","HEAD","HTML","LINK","META","NOSCRIPT","SCRIPT","STYLE","TITLE","TAG_PROPERTIES","REACT_TAG_MAP","accesskey","charset","contenteditable","contextmenu","itemprop","tabindex","HELMET_PROPS","HTML_TAG_MAP","reduce","SELF_CLOSING_TAGS","HELMET_ATTRIBUTE","createClass","Constructor","protoProps","staticProps","objectWithoutProperties","encodeSpecialCharacters","String","getTitleFromPropsList","propsList","innermostTitle","getInnermostProperty","innermostTemplate","innermostDefaultTitle","getOnChangeClientState","getAttributesFromPropsList","tagType","tagAttrs","getBaseTagFromPropsList","primaryAttributes","reverse","innermostBaseTag","tag","lowerCaseAttributeKey","getTagsFromPropsList","tagName","approvedSeenTags","approvedTags","instanceTags","instanceSeenTags","primaryAttributeKey","attributeKey","tagUnion","property","rafPolyfill","now","callback","currentTime","cafPolyfill","id","clearTimeout","bind","webkitRequestAnimationFrame","mozRequestAnimationFrame","webkitCancelAnimationFrame","mozCancelAnimationFrame","msg","_helmetCallback","commitTagChanges","newState","cb","baseTag","htmlAttributes","linkTags","metaTags","noscriptTags","onChangeClientState","scriptTags","styleTags","titleAttributes","updateAttributes","updateTitle","tagUpdates","updateTags","addedTags","removedTags","_tagUpdates$tagType","newTags","oldTags","flattenArray","possibleArray","attributes","elementTag","getElementsByTagName","helmetAttributeString","getAttribute","helmetAttributes","attributesToRemove","attributeKeys","attribute","setAttribute","indexToSave","tags","headElement","head","tagNodes","querySelectorAll","indexToDelete","newElement","styleSheet","cssText","appendChild","createTextNode","some","existingTag","isEqualNode","parentNode","removeChild","generateElementAttributesAsString","attr","convertElementAttributestoReactProps","initProps","getMethodsForTag","encode","toComponent","_initProps","attributeString","flattenedTitle","generateTitleAsString","_mappedTag","mappedTag","mappedAttribute","content","generateTagsAsReactComponent","attributeHtml","tagContent","isSelfClosing","generateTagsAsString","_ref$title","base","link","meta","noscript","script","HelmetSideEffects","defer","HelmetExport","_React$Component","HelmetWrapper","classCallCheck","possibleConstructorReturn","inherits","shouldComponentUpdate","nextProps","mapNestedChildrenToProps","child","nestedChildren","flattenArrayTypeChildren","_babelHelpers$extends","arrayTypeChildren","newChildProps","mapObjectTypeChildren","_babelHelpers$extends2","_babelHelpers$extends3","newProps","mapArrayTypeChildrenToProps","newFlattenedProps","arrayChildName","_babelHelpers$extends4","warnOnInvalidChildren","mapChildrenToProps","_this2","_child$props","initAttributes","convertReactPropstoHtmlAttributes","_props","defaultTitle","titleTemplate","defaultProps","mappedState","renderStatic","isMobileView","setIsMobileView","scrollPosition","setPosition","scrollX","updatePosition","_adjustLinkData$adjus","externalUrl","slotPage","lp","lpPages","adjustLinkData","useStaticQuery","allContentfulComposePage","nodes","node","slug","adjustLink","setLink","_gtag_report_conversi","gtag_report_conversion"],"sourceRoot":""}