{"version":3,"file":"commons-294c72732b8cd279a475.js","mappings":"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","sources":["webpack://noisy-nit-games-marketing-website/./node_modules/axios/index.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/adapters/xhr.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/axios.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/cancel/Cancel.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/cancel/CancelToken.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/cancel/isCancel.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/core/Axios.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/core/InterceptorManager.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/core/buildFullPath.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/core/createError.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/core/dispatchRequest.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/core/enhanceError.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/core/mergeConfig.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/core/settle.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/core/transformData.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/defaults.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/helpers/bind.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/helpers/buildURL.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/helpers/combineURLs.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/helpers/cookies.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/helpers/isAbsoluteURL.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/helpers/isAxiosError.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/helpers/normalizeHeaderName.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/helpers/parseHeaders.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/helpers/spread.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/helpers/validator.js","webpack://noisy-nit-games-marketing-website/./node_modules/axios/lib/utils.js","webpack://noisy-nit-games-marketing-website/./node_modules/camelcase/index.js","webpack://noisy-nit-games-marketing-website/./node_modules/gatsby/dist/internal-plugins/bundle-optimisations/polyfills/object-assign.js","webpack://noisy-nit-games-marketing-website/../src/image-utils.ts","webpack://noisy-nit-games-marketing-website/../src/components/hooks.ts","webpack://noisy-nit-games-marketing-website/../src/components/layout-wrapper.tsx","webpack://noisy-nit-games-marketing-website/../src/components/picture.tsx","webpack://noisy-nit-games-marketing-website/../src/components/placeholder.tsx","webpack://noisy-nit-games-marketing-website/../src/components/main-image.tsx","webpack://noisy-nit-games-marketing-website/../src/components/gatsby-image.server.tsx","webpack://noisy-nit-games-marketing-website/../src/components/gatsby-image.browser.tsx","webpack://noisy-nit-games-marketing-website/../src/components/static-image.server.tsx","webpack://noisy-nit-games-marketing-website/../src/components/static-image.tsx","webpack://noisy-nit-games-marketing-website/./src/components/header.js","webpack://noisy-nit-games-marketing-website/./src/components/footer.js","webpack://noisy-nit-games-marketing-website/./src/components/layout.js","webpack://noisy-nit-games-marketing-website/./node_modules/react-helmet/es/Helmet.js","webpack://noisy-nit-games-marketing-website/./src/components/seo.js","webpack://noisy-nit-games-marketing-website/./node_modules/react-fast-compare/index.js","webpack://noisy-nit-games-marketing-website/./node_modules/react-side-effect/lib/index.js"],"sourcesContent":["module.exports = require('./lib/axios');","'use strict';\n\nvar utils = require('./../utils');\nvar settle = require('./../core/settle');\nvar cookies = require('./../helpers/cookies');\nvar buildURL = require('./../helpers/buildURL');\nvar buildFullPath = require('../core/buildFullPath');\nvar parseHeaders = require('./../helpers/parseHeaders');\nvar isURLSameOrigin = require('./../helpers/isURLSameOrigin');\nvar createError = require('../core/createError');\n\nmodule.exports = function xhrAdapter(config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n var requestData = config.data;\n var requestHeaders = config.headers;\n var responseType = config.responseType;\n\n if (utils.isFormData(requestData)) {\n delete requestHeaders['Content-Type']; // Let the browser set it\n }\n\n var request = new XMLHttpRequest();\n\n // HTTP basic authentication\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : '';\n requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);\n }\n\n var fullPath = buildFullPath(config.baseURL, config.url);\n request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true);\n\n // Set the request timeout in MS\n request.timeout = config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;\n var responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n var response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config: config,\n request: request\n };\n\n settle(resolve, reject, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(createError('Request aborted', config, 'ECONNABORTED', request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(createError('Network Error', config, null, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n var timeoutErrorMessage = 'timeout of ' + config.timeout + 'ms exceeded';\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(createError(\n timeoutErrorMessage,\n config,\n config.transitional && config.transitional.clarifyTimeoutError ? 'ETIMEDOUT' : 'ECONNABORTED',\n request));\n\n // Clean up request\n request = null;\n };\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n if (utils.isStandardBrowserEnv()) {\n // Add xsrf header\n var xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath)) && config.xsrfCookieName ?\n cookies.read(config.xsrfCookieName) :\n undefined;\n\n if (xsrfValue) {\n requestHeaders[config.xsrfHeaderName] = xsrfValue;\n }\n }\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders, function setRequestHeader(val, key) {\n if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {\n // Remove Content-Type if data is undefined\n delete requestHeaders[key];\n } else {\n // Otherwise add header to the request\n request.setRequestHeader(key, val);\n }\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(config.withCredentials)) {\n request.withCredentials = !!config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = config.responseType;\n }\n\n // Handle progress if needed\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', config.onDownloadProgress);\n }\n\n // Not all browsers support upload events\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', config.onUploadProgress);\n }\n\n if (config.cancelToken) {\n // Handle cancellation\n config.cancelToken.promise.then(function onCanceled(cancel) {\n if (!request) {\n return;\n }\n\n request.abort();\n reject(cancel);\n // Clean up request\n request = null;\n });\n }\n\n if (!requestData) {\n requestData = null;\n }\n\n // Send the request\n request.send(requestData);\n });\n};\n","'use strict';\n\nvar utils = require('./utils');\nvar bind = require('./helpers/bind');\nvar Axios = require('./core/Axios');\nvar mergeConfig = require('./core/mergeConfig');\nvar defaults = require('./defaults');\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n * @return {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n var context = new Axios(defaultConfig);\n var instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context);\n\n // Copy context to instance\n utils.extend(instance, context);\n\n return instance;\n}\n\n// Create the default instance to be exported\nvar axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Factory for creating new instances\naxios.create = function create(instanceConfig) {\n return createInstance(mergeConfig(axios.defaults, instanceConfig));\n};\n\n// Expose Cancel & CancelToken\naxios.Cancel = require('./cancel/Cancel');\naxios.CancelToken = require('./cancel/CancelToken');\naxios.isCancel = require('./cancel/isCancel');\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\naxios.spread = require('./helpers/spread');\n\n// Expose isAxiosError\naxios.isAxiosError = require('./helpers/isAxiosError');\n\nmodule.exports = axios;\n\n// Allow use of default import syntax in TypeScript\nmodule.exports.default = axios;\n","'use strict';\n\n/**\n * A `Cancel` is an object that is thrown when an operation is canceled.\n *\n * @class\n * @param {string=} message The message.\n */\nfunction Cancel(message) {\n this.message = message;\n}\n\nCancel.prototype.toString = function toString() {\n return 'Cancel' + (this.message ? ': ' + this.message : '');\n};\n\nCancel.prototype.__CANCEL__ = true;\n\nmodule.exports = Cancel;\n","'use strict';\n\nvar Cancel = require('./Cancel');\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @class\n * @param {Function} executor The executor function.\n */\nfunction CancelToken(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n var resolvePromise;\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n var token = this;\n executor(function cancel(message) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new Cancel(message);\n resolvePromise(token.reason);\n });\n}\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nCancelToken.prototype.throwIfRequested = function throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n};\n\n/**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\nCancelToken.source = function source() {\n var cancel;\n var token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token: token,\n cancel: cancel\n };\n};\n\nmodule.exports = CancelToken;\n","'use strict';\n\nmodule.exports = function isCancel(value) {\n return !!(value && value.__CANCEL__);\n};\n","'use strict';\n\nvar utils = require('./../utils');\nvar buildURL = require('../helpers/buildURL');\nvar InterceptorManager = require('./InterceptorManager');\nvar dispatchRequest = require('./dispatchRequest');\nvar mergeConfig = require('./mergeConfig');\nvar validator = require('../helpers/validator');\n\nvar validators = validator.validators;\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n */\nfunction Axios(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n}\n\n/**\n * Dispatch a request\n *\n * @param {Object} config The config specific for this request (merged with this.defaults)\n */\nAxios.prototype.request = function request(config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof config === 'string') {\n config = arguments[1] || {};\n config.url = arguments[0];\n } else {\n config = config || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n // Set config.method\n if (config.method) {\n config.method = config.method.toLowerCase();\n } else if (this.defaults.method) {\n config.method = this.defaults.method.toLowerCase();\n } else {\n config.method = 'get';\n }\n\n var transitional = config.transitional;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean, '1.0.0'),\n forcedJSONParsing: validators.transitional(validators.boolean, '1.0.0'),\n clarifyTimeoutError: validators.transitional(validators.boolean, '1.0.0')\n }, false);\n }\n\n // filter out skipped interceptors\n var requestInterceptorChain = [];\n var synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n var responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n var promise;\n\n if (!synchronousRequestInterceptors) {\n var chain = [dispatchRequest, undefined];\n\n Array.prototype.unshift.apply(chain, requestInterceptorChain);\n chain = chain.concat(responseInterceptorChain);\n\n promise = Promise.resolve(config);\n while (chain.length) {\n promise = promise.then(chain.shift(), chain.shift());\n }\n\n return promise;\n }\n\n\n var newConfig = config;\n while (requestInterceptorChain.length) {\n var onFulfilled = requestInterceptorChain.shift();\n var onRejected = requestInterceptorChain.shift();\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected(error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest(newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n while (responseInterceptorChain.length) {\n promise = promise.then(responseInterceptorChain.shift(), responseInterceptorChain.shift());\n }\n\n return promise;\n};\n\nAxios.prototype.getUri = function getUri(config) {\n config = mergeConfig(this.defaults, config);\n return buildURL(config.url, config.params, config.paramsSerializer).replace(/^\\?/, '');\n};\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n url: url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n url: url,\n data: data\n }));\n };\n});\n\nmodule.exports = Axios;\n","'use strict';\n\nvar utils = require('./../utils');\n\nfunction InterceptorManager() {\n this.handlers = [];\n}\n\n/**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\nInterceptorManager.prototype.use = function use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled: fulfilled,\n rejected: rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n};\n\n/**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n */\nInterceptorManager.prototype.eject = function eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n};\n\n/**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n */\nInterceptorManager.prototype.forEach = function forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n};\n\nmodule.exports = InterceptorManager;\n","'use strict';\n\nvar isAbsoluteURL = require('../helpers/isAbsoluteURL');\nvar combineURLs = require('../helpers/combineURLs');\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n * @returns {string} The combined full path\n */\nmodule.exports = function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n};\n","'use strict';\n\nvar enhanceError = require('./enhanceError');\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The created error.\n */\nmodule.exports = function createError(message, config, code, request, response) {\n var error = new Error(message);\n return enhanceError(error, config, code, request, response);\n};\n","'use strict';\n\nvar utils = require('./../utils');\nvar transformData = require('./transformData');\nvar isCancel = require('../cancel/isCancel');\nvar defaults = require('../defaults');\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n * @returns {Promise} The Promise to be fulfilled\n */\nmodule.exports = function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n // Ensure headers exist\n config.headers = config.headers || {};\n\n // Transform request data\n config.data = transformData.call(\n config,\n config.data,\n config.headers,\n config.transformRequest\n );\n\n // Flatten headers\n config.headers = utils.merge(\n config.headers.common || {},\n config.headers[config.method] || {},\n config.headers\n );\n\n utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n function cleanHeaderConfig(method) {\n delete config.headers[method];\n }\n );\n\n var adapter = config.adapter || defaults.adapter;\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData.call(\n config,\n response.data,\n response.headers,\n config.transformResponse\n );\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n reason.response.data,\n reason.response.headers,\n config.transformResponse\n );\n }\n }\n\n return Promise.reject(reason);\n });\n};\n","'use strict';\n\n/**\n * Update an Error with the specified config, error code, and response.\n *\n * @param {Error} error The error to update.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The error.\n */\nmodule.exports = function enhanceError(error, config, code, request, response) {\n error.config = config;\n if (code) {\n error.code = code;\n }\n\n error.request = request;\n error.response = response;\n error.isAxiosError = true;\n\n error.toJSON = function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: this.config,\n code: this.code\n };\n };\n return error;\n};\n","'use strict';\n\nvar utils = require('../utils');\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n * @returns {Object} New object resulting from merging config2 to config1\n */\nmodule.exports = function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n var config = {};\n\n var valueFromConfig2Keys = ['url', 'method', 'data'];\n var mergeDeepPropertiesKeys = ['headers', 'auth', 'proxy', 'params'];\n var defaultToConfig2Keys = [\n 'baseURL', 'transformRequest', 'transformResponse', 'paramsSerializer',\n 'timeout', 'timeoutMessage', 'withCredentials', 'adapter', 'responseType', 'xsrfCookieName',\n 'xsrfHeaderName', 'onUploadProgress', 'onDownloadProgress', 'decompress',\n 'maxContentLength', 'maxBodyLength', 'maxRedirects', 'transport', 'httpAgent',\n 'httpsAgent', 'cancelToken', 'socketPath', 'responseEncoding'\n ];\n var directMergeKeys = ['validateStatus'];\n\n function getMergedValue(target, source) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge(target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n function mergeDeepProperties(prop) {\n if (!utils.isUndefined(config2[prop])) {\n config[prop] = getMergedValue(config1[prop], config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n config[prop] = getMergedValue(undefined, config1[prop]);\n }\n }\n\n utils.forEach(valueFromConfig2Keys, function valueFromConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n config[prop] = getMergedValue(undefined, config2[prop]);\n }\n });\n\n utils.forEach(mergeDeepPropertiesKeys, mergeDeepProperties);\n\n utils.forEach(defaultToConfig2Keys, function defaultToConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n config[prop] = getMergedValue(undefined, config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n config[prop] = getMergedValue(undefined, config1[prop]);\n }\n });\n\n utils.forEach(directMergeKeys, function merge(prop) {\n if (prop in config2) {\n config[prop] = getMergedValue(config1[prop], config2[prop]);\n } else if (prop in config1) {\n config[prop] = getMergedValue(undefined, config1[prop]);\n }\n });\n\n var axiosKeys = valueFromConfig2Keys\n .concat(mergeDeepPropertiesKeys)\n .concat(defaultToConfig2Keys)\n .concat(directMergeKeys);\n\n var otherKeys = Object\n .keys(config1)\n .concat(Object.keys(config2))\n .filter(function filterAxiosKeys(key) {\n return axiosKeys.indexOf(key) === -1;\n });\n\n utils.forEach(otherKeys, mergeDeepProperties);\n\n return config;\n};\n","'use strict';\n\nvar createError = require('./createError');\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n */\nmodule.exports = function settle(resolve, reject, response) {\n var validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(createError(\n 'Request failed with status code ' + response.status,\n response.config,\n null,\n response.request,\n response\n ));\n }\n};\n","'use strict';\n\nvar utils = require('./../utils');\nvar defaults = require('./../defaults');\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Object|String} data The data to be transformed\n * @param {Array} headers The headers for the request or response\n * @param {Array|Function} fns A single function or Array of functions\n * @returns {*} The resulting transformed data\n */\nmodule.exports = function transformData(data, headers, fns) {\n var context = this || defaults;\n /*eslint no-param-reassign:0*/\n utils.forEach(fns, function transform(fn) {\n data = fn.call(context, data, headers);\n });\n\n return data;\n};\n","'use strict';\n\nvar utils = require('./utils');\nvar normalizeHeaderName = require('./helpers/normalizeHeaderName');\nvar enhanceError = require('./core/enhanceError');\n\nvar DEFAULT_CONTENT_TYPE = {\n 'Content-Type': 'application/x-www-form-urlencoded'\n};\n\nfunction setContentTypeIfUnset(headers, value) {\n if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) {\n headers['Content-Type'] = value;\n }\n}\n\nfunction getDefaultAdapter() {\n var adapter;\n if (typeof XMLHttpRequest !== 'undefined') {\n // For browsers use XHR adapter\n adapter = require('./adapters/xhr');\n } else if (typeof process !== 'undefined' && Object.prototype.toString.call(process) === '[object process]') {\n // For node use HTTP adapter\n adapter = require('./adapters/http');\n }\n return adapter;\n}\n\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nvar defaults = {\n\n transitional: {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n },\n\n adapter: getDefaultAdapter(),\n\n transformRequest: [function transformRequest(data, headers) {\n normalizeHeaderName(headers, 'Accept');\n normalizeHeaderName(headers, 'Content-Type');\n\n if (utils.isFormData(data) ||\n utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');\n return data.toString();\n }\n if (utils.isObject(data) || (headers && headers['Content-Type'] === 'application/json')) {\n setContentTypeIfUnset(headers, 'application/json');\n return stringifySafely(data);\n }\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n var transitional = this.transitional;\n var silentJSONParsing = transitional && transitional.silentJSONParsing;\n var forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n var strictJSONParsing = !silentJSONParsing && this.responseType === 'json';\n\n if (strictJSONParsing || (forcedJSONParsing && utils.isString(data) && data.length)) {\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw enhanceError(e, this, 'E_JSON_PARSE');\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n }\n};\n\ndefaults.headers = {\n common: {\n 'Accept': 'application/json, text/plain, */*'\n }\n};\n\nutils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {\n defaults.headers[method] = {};\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\n\nmodule.exports = defaults;\n","'use strict';\n\nmodule.exports = function bind(fn, thisArg) {\n return function wrap() {\n var args = new Array(arguments.length);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i];\n }\n return fn.apply(thisArg, args);\n };\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @returns {string} The formatted url\n */\nmodule.exports = function buildURL(url, params, paramsSerializer) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n\n var serializedParams;\n if (paramsSerializer) {\n serializedParams = paramsSerializer(params);\n } else if (utils.isURLSearchParams(params)) {\n serializedParams = params.toString();\n } else {\n var parts = [];\n\n utils.forEach(params, function serialize(val, key) {\n if (val === null || typeof val === 'undefined') {\n return;\n }\n\n if (utils.isArray(val)) {\n key = key + '[]';\n } else {\n val = [val];\n }\n\n utils.forEach(val, function parseValue(v) {\n if (utils.isDate(v)) {\n v = v.toISOString();\n } else if (utils.isObject(v)) {\n v = JSON.stringify(v);\n }\n parts.push(encode(key) + '=' + encode(v));\n });\n });\n\n serializedParams = parts.join('&');\n }\n\n if (serializedParams) {\n var hashmarkIndex = url.indexOf('#');\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n};\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n * @returns {string} The combined URL\n */\nmodule.exports = function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs support document.cookie\n (function standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n var cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n\n if (utils.isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n\n if (utils.isString(path)) {\n cookie.push('path=' + path);\n }\n\n if (utils.isString(domain)) {\n cookie.push('domain=' + domain);\n }\n\n if (secure === true) {\n cookie.push('secure');\n }\n\n document.cookie = cookie.join('; ');\n },\n\n read: function read(name) {\n var match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n })() :\n\n // Non standard browser env (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return {\n write: function write() {},\n read: function read() { return null; },\n remove: function remove() {}\n };\n })()\n);\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nmodule.exports = function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d\\+\\-\\.]*:)?\\/\\//i.test(url);\n};\n","'use strict';\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nmodule.exports = function isAxiosError(payload) {\n return (typeof payload === 'object') && (payload.isAxiosError === true);\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs have full support of the APIs needed to test\n // whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n var msie = /(msie|trident)/i.test(navigator.userAgent);\n var urlParsingNode = document.createElement('a');\n var originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n var href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n var parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })()\n);\n","'use strict';\n\nvar utils = require('../utils');\n\nmodule.exports = function normalizeHeaderName(headers, normalizedName) {\n utils.forEach(headers, function processHeader(value, name) {\n if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) {\n headers[normalizedName] = value;\n delete headers[name];\n }\n });\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\n// Headers whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nvar ignoreDuplicateOf = [\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n];\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} headers Headers needing to be parsed\n * @returns {Object} Headers parsed into an object\n */\nmodule.exports = function parseHeaders(headers) {\n var parsed = {};\n var key;\n var val;\n var i;\n\n if (!headers) { return parsed; }\n\n utils.forEach(headers.split('\\n'), function parser(line) {\n i = line.indexOf(':');\n key = utils.trim(line.substr(0, i)).toLowerCase();\n val = utils.trim(line.substr(i + 1));\n\n if (key) {\n if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) {\n return;\n }\n if (key === 'set-cookie') {\n parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]);\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n }\n });\n\n return parsed;\n};\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n * @returns {Function}\n */\nmodule.exports = function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n};\n","'use strict';\n\nvar pkg = require('./../../package.json');\n\nvar validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach(function(type, i) {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nvar deprecatedWarnings = {};\nvar currentVerArr = pkg.version.split('.');\n\n/**\n * Compare package versions\n * @param {string} version\n * @param {string?} thanVersion\n * @returns {boolean}\n */\nfunction isOlderVersion(version, thanVersion) {\n var pkgVersionArr = thanVersion ? thanVersion.split('.') : currentVerArr;\n var destVer = version.split('.');\n for (var i = 0; i < 3; i++) {\n if (pkgVersionArr[i] > destVer[i]) {\n return true;\n } else if (pkgVersionArr[i] < destVer[i]) {\n return false;\n }\n }\n return false;\n}\n\n/**\n * Transitional option validator\n * @param {function|boolean?} validator\n * @param {string?} version\n * @param {string} message\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n var isDeprecated = version && isOlderVersion(version);\n\n function formatMessage(opt, desc) {\n return '[Axios v' + pkg.version + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return function(value, opt, opts) {\n if (validator === false) {\n throw new Error(formatMessage(opt, ' has been removed in ' + version));\n }\n\n if (isDeprecated && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\n/**\n * Assert object's properties type\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new TypeError('options must be an object');\n }\n var keys = Object.keys(options);\n var i = keys.length;\n while (i-- > 0) {\n var opt = keys[i];\n var validator = schema[opt];\n if (validator) {\n var value = options[opt];\n var result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new TypeError('option ' + opt + ' must be ' + result);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw Error('Unknown option ' + opt);\n }\n }\n}\n\nmodule.exports = {\n isOlderVersion: isOlderVersion,\n assertOptions: assertOptions,\n validators: validators\n};\n","'use strict';\n\nvar bind = require('./helpers/bind');\n\n// utils is a library of generic helper functions non-specific to axios\n\nvar toString = Object.prototype.toString;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Array, otherwise false\n */\nfunction isArray(val) {\n return toString.call(val) === '[object Array]';\n}\n\n/**\n * Determine if a value is undefined\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nfunction isUndefined(val) {\n return typeof val === 'undefined';\n}\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && typeof val.constructor.isBuffer === 'function' && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nfunction isArrayBuffer(val) {\n return toString.call(val) === '[object ArrayBuffer]';\n}\n\n/**\n * Determine if a value is a FormData\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nfunction isFormData(val) {\n return (typeof FormData !== 'undefined') && (val instanceof FormData);\n}\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n var result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer);\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a String, otherwise false\n */\nfunction isString(val) {\n return typeof val === 'string';\n}\n\n/**\n * Determine if a value is a Number\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Number, otherwise false\n */\nfunction isNumber(val) {\n return typeof val === 'number';\n}\n\n/**\n * Determine if a value is an Object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Object, otherwise false\n */\nfunction isObject(val) {\n return val !== null && typeof val === 'object';\n}\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {Object} val The value to test\n * @return {boolean} True if value is a plain Object, otherwise false\n */\nfunction isPlainObject(val) {\n if (toString.call(val) !== '[object Object]') {\n return false;\n }\n\n var prototype = Object.getPrototypeOf(val);\n return prototype === null || prototype === Object.prototype;\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Date, otherwise false\n */\nfunction isDate(val) {\n return toString.call(val) === '[object Date]';\n}\n\n/**\n * Determine if a value is a File\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a File, otherwise false\n */\nfunction isFile(val) {\n return toString.call(val) === '[object File]';\n}\n\n/**\n * Determine if a value is a Blob\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nfunction isBlob(val) {\n return toString.call(val) === '[object Blob]';\n}\n\n/**\n * Determine if a value is a Function\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nfunction isFunction(val) {\n return toString.call(val) === '[object Function]';\n}\n\n/**\n * Determine if a value is a Stream\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nfunction isStream(val) {\n return isObject(val) && isFunction(val.pipe);\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nfunction isURLSearchParams(val) {\n return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;\n}\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n * @returns {String} The String freed of excess whitespace\n */\nfunction trim(str) {\n return str.trim ? str.trim() : str.replace(/^\\s+|\\s+$/g, '');\n}\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n */\nfunction isStandardBrowserEnv() {\n if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' ||\n navigator.product === 'NativeScript' ||\n navigator.product === 'NS')) {\n return false;\n }\n return (\n typeof window !== 'undefined' &&\n typeof document !== 'undefined'\n );\n}\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n */\nfunction forEach(obj, fn) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (var i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n fn.call(null, obj[key], key, obj);\n }\n }\n }\n}\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n var result = {};\n function assignValue(val, key) {\n if (isPlainObject(result[key]) && isPlainObject(val)) {\n result[key] = merge(result[key], val);\n } else if (isPlainObject(val)) {\n result[key] = merge({}, val);\n } else if (isArray(val)) {\n result[key] = val.slice();\n } else {\n result[key] = val;\n }\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n * @return {Object} The resulting value of object a\n */\nfunction extend(a, b, thisArg) {\n forEach(b, function assignValue(val, key) {\n if (thisArg && typeof val === 'function') {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n });\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n * @return {string} content value without BOM\n */\nfunction stripBOM(content) {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\nmodule.exports = {\n isArray: isArray,\n isArrayBuffer: isArrayBuffer,\n isBuffer: isBuffer,\n isFormData: isFormData,\n isArrayBufferView: isArrayBufferView,\n isString: isString,\n isNumber: isNumber,\n isObject: isObject,\n isPlainObject: isPlainObject,\n isUndefined: isUndefined,\n isDate: isDate,\n isFile: isFile,\n isBlob: isBlob,\n isFunction: isFunction,\n isStream: isStream,\n isURLSearchParams: isURLSearchParams,\n isStandardBrowserEnv: isStandardBrowserEnv,\n forEach: forEach,\n merge: merge,\n extend: extend,\n trim: trim,\n stripBOM: stripBOM\n};\n","'use strict';\n\nconst UPPERCASE = /[\\p{Lu}]/u;\nconst LOWERCASE = /[\\p{Ll}]/u;\nconst LEADING_CAPITAL = /^[\\p{Lu}](?![\\p{Lu}])/gu;\nconst IDENTIFIER = /([\\p{Alpha}\\p{N}_]|$)/u;\nconst SEPARATORS = /[_.\\- ]+/;\n\nconst LEADING_SEPARATORS = new RegExp('^' + SEPARATORS.source);\nconst SEPARATORS_AND_IDENTIFIER = new RegExp(SEPARATORS.source + IDENTIFIER.source, 'gu');\nconst NUMBERS_AND_IDENTIFIER = new RegExp('\\\\d+' + IDENTIFIER.source, 'gu');\n\nconst preserveCamelCase = (string, toLowerCase, toUpperCase) => {\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 && UPPERCASE.test(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 && LOWERCASE.test(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 = toLowerCase(character) === character && toUpperCase(character) !== character;\n\t\t\tisLastLastCharUpper = isLastCharUpper;\n\t\t\tisLastCharUpper = toUpperCase(character) === character && toLowerCase(character) !== character;\n\t\t}\n\t}\n\n\treturn string;\n};\n\nconst preserveConsecutiveUppercase = (input, toLowerCase) => {\n\tLEADING_CAPITAL.lastIndex = 0;\n\n\treturn input.replace(LEADING_CAPITAL, m1 => toLowerCase(m1));\n};\n\nconst postProcess = (input, toUpperCase) => {\n\tSEPARATORS_AND_IDENTIFIER.lastIndex = 0;\n\tNUMBERS_AND_IDENTIFIER.lastIndex = 0;\n\n\treturn input.replace(SEPARATORS_AND_IDENTIFIER, (_, identifier) => toUpperCase(identifier))\n\t\t.replace(NUMBERS_AND_IDENTIFIER, m => toUpperCase(m));\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 = {\n\t\tpascalCase: false,\n\t\tpreserveConsecutiveUppercase: false,\n\t\t...options\n\t};\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\tconst toLowerCase = options.locale === false ?\n\t\tstring => string.toLowerCase() :\n\t\tstring => string.toLocaleLowerCase(options.locale);\n\tconst toUpperCase = options.locale === false ?\n\t\tstring => string.toUpperCase() :\n\t\tstring => string.toLocaleUpperCase(options.locale);\n\n\tif (input.length === 1) {\n\t\treturn options.pascalCase ? toUpperCase(input) : toLowerCase(input);\n\t}\n\n\tconst hasUpperCase = input !== toLowerCase(input);\n\n\tif (hasUpperCase) {\n\t\tinput = preserveCamelCase(input, toLowerCase, toUpperCase);\n\t}\n\n\tinput = input.replace(LEADING_SEPARATORS, '');\n\n\tif (options.preserveConsecutiveUppercase) {\n\t\tinput = preserveConsecutiveUppercase(input, toLowerCase);\n\t} else {\n\t\tinput = toLowerCase(input);\n\t}\n\n\tif (options.pascalCase) {\n\t\tinput = toUpperCase(input.charAt(0)) + input.slice(1);\n\t}\n\n\treturn postProcess(input, toUpperCase);\n};\n\nmodule.exports = camelCase;\n// TODO: Remove this for the next major release\nmodule.exports.default = camelCase;\n","\"use strict\";\n\nmodule.exports = Object.assign;\n//# sourceMappingURL=object-assign.js.map","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, PropsWithChildren } 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 PropsWithChildren\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 filename?: 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","import { Link } from \"gatsby\"\r\nimport PropTypes from \"prop-types\"\r\nimport React from \"react\"\r\nimport { StaticImage } from \"gatsby-plugin-image\"\r\n\r\n// style={{\r\n// background: `#140017`,\r\n// marginBottom: `1.45rem`,\r\n\r\nconst Header = ({ siteTitle }) => (\r\n
\r\n
\r\n \r\n
\r\n\r\n {/* Desktop header */}\r\n \r\n \r\n \r\n\r\n \r\n\r\n\r\n {/* Mobile header */}\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n\r\n\r\n \r\n \r\n
\r\n
\r\n)\r\n\r\nHeader.propTypes = {\r\n siteTitle: PropTypes.string,\r\n}\r\n\r\nHeader.defaultProps = {\r\n siteTitle: `Noisy Nit Games`,\r\n}\r\n\r\nexport default Header\r\n","import React from \"react\"\r\nimport { Link } from \"gatsby\"\r\n\r\nconst Footer = () => {\r\n\r\n return(\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n

© {new Date().getFullYear()} Noisy Nit Games Pty. Ltd.™

\r\n \r\n
\r\n
\r\n
    \r\n
  • Privacy Policy
  • \r\n
  • Support
  • \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n )\r\n}\r\n\r\nexport default Footer;","/**\r\n * Layout component that queries for data\r\n * with Gatsby's useStaticQuery component\r\n *\r\n * See: https://www.gatsbyjs.com/docs/use-static-query/\r\n */\r\n\r\nimport React from \"react\"\r\nimport PropTypes from \"prop-types\"\r\nimport { useStaticQuery, graphql, Link } from \"gatsby\"\r\nimport Header from \"./header\"\r\nimport Footer from \"./footer\"\r\nimport \"./layout.css\"\r\nimport ContactForm from \"./contactForm\"\r\n\r\nconst Layout = ({ children }) => {\r\n const data = useStaticQuery(graphql`\r\n query SiteTitleQuery {\r\n site {\r\n siteMetadata {\r\n title,\r\n author\r\n }\r\n }\r\n }\r\n `)\r\n\r\n return (\r\n <>\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n {children}\r\n
\r\n {/* */}\r\n
\r\n
\r\n\r\n