{"version":3,"file":"commons-39560dfff9439d6ef6d9.js","mappings":"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","sources":["webpack://unwrangle-data-website/./node_modules/camelcase/index.js","webpack://unwrangle-data-website/./node_modules/gatsby-plugin-google-gtag/index.js","webpack://unwrangle-data-website/../src/image-utils.ts","webpack://unwrangle-data-website/../src/components/hooks.ts","webpack://unwrangle-data-website/../src/components/layout-wrapper.tsx","webpack://unwrangle-data-website/../src/components/picture.tsx","webpack://unwrangle-data-website/../src/components/placeholder.tsx","webpack://unwrangle-data-website/../src/components/main-image.tsx","webpack://unwrangle-data-website/../src/components/gatsby-image.server.tsx","webpack://unwrangle-data-website/../src/components/gatsby-image.browser.tsx","webpack://unwrangle-data-website/../src/components/static-image.server.tsx","webpack://unwrangle-data-website/../src/components/static-image.tsx","webpack://unwrangle-data-website/./node_modules/@headlessui/react/dist/utils/disposables.js","webpack://unwrangle-data-website/./node_modules/@headlessui/react/dist/utils/micro-task.js","webpack://unwrangle-data-website/./node_modules/@headlessui/react/dist/hooks/use-disposables.js","webpack://unwrangle-data-website/./node_modules/@headlessui/react/dist/hooks/use-server-handoff-complete.js","webpack://unwrangle-data-website/./node_modules/@headlessui/react/dist/hooks/use-transition.js","webpack://unwrangle-data-website/./node_modules/@headlessui/react/dist/hooks/use-flags.js","webpack://unwrangle-data-website/./node_modules/@headlessui/react/dist/internal/open-closed.js","webpack://unwrangle-data-website/./node_modules/@headlessui/react/dist/components/transition/transition.js","webpack://unwrangle-data-website/./node_modules/@headlessui/react/dist/hooks/use-is-mounted.js","webpack://unwrangle-data-website/./src/components/logo.js","webpack://unwrangle-data-website/./src/components/header.js","webpack://unwrangle-data-website/./src/components/footer.js","webpack://unwrangle-data-website/./src/components/layout.js","webpack://unwrangle-data-website/./src/components/seo.js","webpack://unwrangle-data-website/./node_modules/@babel/runtime/helpers/extends.js","webpack://unwrangle-data-website/./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js","webpack://unwrangle-data-website/./node_modules/core-js/internals/array-method-is-strict.js","webpack://unwrangle-data-website/./node_modules/core-js/internals/array-slice.js","webpack://unwrangle-data-website/./node_modules/core-js/internals/array-sort.js","webpack://unwrangle-data-website/./node_modules/core-js/internals/classof.js","webpack://unwrangle-data-website/./node_modules/core-js/internals/delete-property-or-throw.js","webpack://unwrangle-data-website/./node_modules/core-js/internals/environment-ff-version.js","webpack://unwrangle-data-website/./node_modules/core-js/internals/environment-is-ie-or-edge.js","webpack://unwrangle-data-website/./node_modules/core-js/internals/environment-webkit-version.js","webpack://unwrangle-data-website/./node_modules/core-js/internals/to-string-tag-support.js","webpack://unwrangle-data-website/./node_modules/core-js/internals/to-string.js","webpack://unwrangle-data-website/./node_modules/core-js/modules/es.array.sort.js","webpack://unwrangle-data-website/./node_modules/@headlessui/react/dist/hooks/use-event.js","webpack://unwrangle-data-website/./node_modules/@headlessui/react/dist/hooks/use-iso-morphic-effect.js","webpack://unwrangle-data-website/./node_modules/@headlessui/react/dist/hooks/use-latest-value.js","webpack://unwrangle-data-website/./node_modules/@headlessui/react/dist/hooks/use-sync-refs.js","webpack://unwrangle-data-website/./node_modules/@headlessui/react/dist/utils/class-names.js","webpack://unwrangle-data-website/./node_modules/@headlessui/react/dist/utils/env.js","webpack://unwrangle-data-website/./node_modules/@headlessui/react/dist/utils/match.js","webpack://unwrangle-data-website/./node_modules/@headlessui/react/dist/utils/render.js","webpack://unwrangle-data-website/./node_modules/react-icons/lib/iconsManifest.mjs","webpack://unwrangle-data-website/./node_modules/react-icons/lib/iconContext.mjs","webpack://unwrangle-data-website/./node_modules/react-icons/lib/iconBase.mjs"],"sourcesContent":["'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\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nexports.__esModule = true;\nexports.OutboundLink = void 0;\nvar _extends2 = _interopRequireDefault(require(\"@babel/runtime/helpers/extends\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/objectWithoutPropertiesLoose\"));\nvar _react = _interopRequireDefault(require(\"react\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _excluded = [\"children\"];\nvar OutboundLink = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {\n var children = _ref.children,\n props = (0, _objectWithoutPropertiesLoose2.default)(_ref, _excluded);\n return /*#__PURE__*/_react.default.createElement(\"a\", (0, _extends2.default)({\n ref: ref\n }, props, {\n onClick: function onClick(e) {\n if (typeof props.onClick === \"function\") {\n props.onClick(e);\n }\n var redirect = true;\n if (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey || e.shiftKey || e.defaultPrevented) {\n redirect = false;\n }\n if (props.target && props.target.toLowerCase() !== \"_self\") {\n redirect = false;\n }\n if (window.gtag) {\n window.gtag(\"event\", \"click\", {\n event_category: \"outbound\",\n event_label: props.href,\n transport_type: redirect ? \"beacon\" : \"\",\n event_callback: function event_callback() {\n if (redirect) {\n document.location = props.href;\n }\n }\n });\n } else {\n if (redirect) {\n document.location = props.href;\n }\n }\n return false;\n }\n }), children);\n});\nexports.OutboundLink = OutboundLink;\nOutboundLink.propTypes = {\n href: _propTypes.default.string,\n target: _propTypes.default.string,\n onClick: _propTypes.default.func\n};","import camelCase from \"camelcase\"\nimport type { IGatsbyImageData } from \"./index\"\n\nconst DEFAULT_PIXEL_DENSITIES = [0.25, 0.5, 1, 2]\nexport const DEFAULT_BREAKPOINTS = [750, 1080, 1366, 1920]\nexport const EVERY_BREAKPOINT = [\n 320, 654, 768, 1024, 1366, 1600, 1920, 2048, 2560, 3440, 3840, 4096,\n]\nconst DEFAULT_FLUID_WIDTH = 800\nconst DEFAULT_FIXED_WIDTH = 800\nconst DEFAULT_ASPECT_RATIO = 4 / 3\n\nexport type Fit = \"cover\" | \"fill\" | \"inside\" | \"outside\" | \"contain\"\n\nexport type Layout = \"fixed\" | \"fullWidth\" | \"constrained\"\nexport type ImageFormat = \"jpg\" | \"png\" | \"webp\" | \"avif\" | \"auto\" | \"\"\n\n/**\n * The minimal required reporter, as we don't want to import it from gatsby-cli\n */\nexport interface IReporter {\n warn(message: string): void\n}\n\nexport interface ISharpGatsbyImageArgs {\n layout?: Layout\n formats?: Array\n placeholder?: \"tracedSVG\" | \"dominantColor\" | \"blurred\" | \"none\"\n tracedSVGOptions?: Record\n width?: number\n height?: number\n aspectRatio?: number\n sizes?: string\n quality?: number\n transformOptions?: {\n fit?: Fit\n cropFocus?: number | string\n duotone?: {\n highlight: string\n shadow: string\n opacity?: number\n }\n grayscale?: boolean\n rotate?: number\n trim?: number\n }\n jpgOptions?: Record\n pngOptions?: Record\n webpOptions?: Record\n avifOptions?: Record\n blurredOptions?: { width?: number; toFormat?: ImageFormat }\n breakpoints?: Array\n outputPixelDensities?: Array\n backgroundColor?: string\n}\n\nexport interface IImageSizeArgs {\n width?: number\n height?: number\n layout?: Layout\n filename: string\n outputPixelDensities?: Array\n breakpoints?: Array\n fit?: Fit\n reporter?: IReporter\n sourceMetadata: { width: number; height: number }\n}\n\nexport interface IImageSizes {\n sizes: Array\n presentationWidth: number\n presentationHeight: number\n aspectRatio: number\n unscaledWidth: number\n}\n\nexport interface IImage {\n src: string\n width: number\n height: number\n format: ImageFormat\n}\n\nexport interface IGatsbyImageHelperArgs {\n pluginName: string\n generateImageSource: (\n filename: string,\n width: number,\n height: number,\n format: ImageFormat,\n fit?: Fit,\n options?: Record\n ) => IImage\n layout?: Layout\n formats?: Array\n filename: string\n placeholderURL?: string\n width?: number\n height?: number\n sizes?: string\n reporter?: IReporter\n sourceMetadata?: { width: number; height: number; format: ImageFormat }\n fit?: Fit\n options?: Record\n breakpoints?: Array\n backgroundColor?: string\n aspectRatio?: number\n}\n\nconst warn = (message: string): void => console.warn(message)\n\nconst sortNumeric = (a: number, b: number): number => a - b\n\nexport const getSizes = (width: number, layout: Layout): string | undefined => {\n switch (layout) {\n // If screen is wider than the max size, image width is the max size,\n // otherwise it's the width of the screen\n case `constrained`:\n return `(min-width: ${width}px) ${width}px, 100vw`\n\n // Image is always the same width, whatever the size of the screen\n case `fixed`:\n return `${width}px`\n\n // Image is always the width of the screen\n case `fullWidth`:\n return `100vw`\n\n default:\n return undefined\n }\n}\n\nexport const getSrcSet = (images: Array): string =>\n images.map(image => `${image.src} ${image.width}w`).join(`,\\n`)\n\nexport function formatFromFilename(filename: string): ImageFormat | undefined {\n const dot = filename.lastIndexOf(`.`)\n if (dot !== -1) {\n const ext = filename.slice(dot + 1)\n if (ext === `jpeg`) {\n return `jpg`\n }\n if (ext.length === 3 || ext.length === 4) {\n return ext as ImageFormat\n }\n }\n return undefined\n}\n\nexport function setDefaultDimensions(\n args: IGatsbyImageHelperArgs\n): IGatsbyImageHelperArgs {\n let {\n layout = `constrained`,\n width,\n height,\n sourceMetadata,\n breakpoints,\n aspectRatio,\n formats = [`auto`, `webp`],\n } = args\n formats = formats.map(format => format.toLowerCase() as ImageFormat)\n layout = camelCase(layout) as Layout\n\n if (width && height) {\n return { ...args, formats, layout, aspectRatio: width / height }\n }\n if (sourceMetadata.width && sourceMetadata.height && !aspectRatio) {\n aspectRatio = sourceMetadata.width / sourceMetadata.height\n }\n\n if (layout === `fullWidth`) {\n width = width || sourceMetadata.width || breakpoints[breakpoints.length - 1]\n height = height || Math.round(width / (aspectRatio || DEFAULT_ASPECT_RATIO))\n } else {\n if (!width) {\n if (height && aspectRatio) {\n width = height * aspectRatio\n } else if (sourceMetadata.width) {\n width = sourceMetadata.width\n } else if (height) {\n width = Math.round(height / DEFAULT_ASPECT_RATIO)\n } else {\n width = DEFAULT_FIXED_WIDTH\n }\n }\n\n if (aspectRatio && !height) {\n height = Math.round(width / aspectRatio)\n } else if (!aspectRatio) {\n aspectRatio = width / height\n }\n }\n return { ...args, width, height, aspectRatio, layout, formats }\n}\n\n/**\n * Use this for getting an image for the blurred placeholder. This ensures the\n * aspect ratio and crop match the main image\n */\nexport function getLowResolutionImageURL(\n args: IGatsbyImageHelperArgs,\n width = 20\n): string {\n args = setDefaultDimensions(args)\n const { generateImageSource, filename, aspectRatio } = args\n return generateImageSource(\n filename,\n width,\n Math.round(width / aspectRatio),\n args.sourceMetadata.format || `jpg`,\n args.fit,\n args.options\n )?.src\n}\n\nexport function generateImageData(\n args: IGatsbyImageHelperArgs\n): IGatsbyImageData {\n args = setDefaultDimensions(args)\n\n let {\n pluginName,\n sourceMetadata,\n generateImageSource,\n layout,\n fit,\n options,\n width,\n height,\n filename,\n reporter = { warn },\n backgroundColor,\n placeholderURL,\n } = args\n\n if (!pluginName) {\n reporter.warn(\n `[gatsby-plugin-image] \"generateImageData\" was not passed a plugin name`\n )\n }\n\n if (typeof generateImageSource !== `function`) {\n throw new Error(`generateImageSource must be a function`)\n }\n\n if (!sourceMetadata || (!sourceMetadata.width && !sourceMetadata.height)) {\n // No metadata means we let the CDN handle max size etc, aspect ratio etc\n sourceMetadata = {\n width,\n height,\n format: sourceMetadata?.format || formatFromFilename(filename) || `auto`,\n }\n } else if (!sourceMetadata.format) {\n sourceMetadata.format = formatFromFilename(filename)\n }\n\n const formats = new Set(args.formats)\n\n if (formats.size === 0 || formats.has(`auto`) || formats.has(``)) {\n formats.delete(`auto`)\n formats.delete(``)\n formats.add(sourceMetadata.format)\n }\n\n if (formats.has(`jpg`) && formats.has(`png`)) {\n reporter.warn(\n `[${pluginName}] Specifying both 'jpg' and 'png' formats is not supported. Using 'auto' instead`\n )\n if (sourceMetadata.format === `jpg`) {\n formats.delete(`png`)\n } else {\n formats.delete(`jpg`)\n }\n }\n\n const imageSizes = calculateImageSizes({ ...args, sourceMetadata })\n\n const result: IGatsbyImageData[\"images\"] = {\n sources: [],\n }\n\n let sizes = args.sizes\n if (!sizes) {\n sizes = getSizes(imageSizes.presentationWidth, layout)\n }\n\n formats.forEach(format => {\n const images = imageSizes.sizes\n .map(size => {\n const imageSrc = generateImageSource(\n filename,\n size,\n Math.round(size / imageSizes.aspectRatio),\n format,\n fit,\n options\n )\n if (\n !imageSrc?.width ||\n !imageSrc.height ||\n !imageSrc.src ||\n !imageSrc.format\n ) {\n reporter.warn(\n `[${pluginName}] The resolver for image ${filename} returned an invalid value.`\n )\n return undefined\n }\n return imageSrc\n })\n .filter(Boolean)\n\n if (format === `jpg` || format === `png` || format === `auto`) {\n const unscaled =\n images.find(img => img.width === imageSizes.unscaledWidth) || images[0]\n\n if (unscaled) {\n result.fallback = {\n src: unscaled.src,\n srcSet: getSrcSet(images),\n sizes,\n }\n }\n } else {\n result.sources?.push({\n srcSet: getSrcSet(images),\n sizes,\n type: `image/${format}`,\n })\n }\n })\n\n const imageProps: Partial = {\n images: result,\n layout,\n backgroundColor,\n }\n\n if (placeholderURL) {\n imageProps.placeholder = { fallback: placeholderURL }\n }\n\n switch (layout) {\n case `fixed`:\n imageProps.width = imageSizes.presentationWidth\n imageProps.height = imageSizes.presentationHeight\n break\n\n case `fullWidth`:\n imageProps.width = 1\n imageProps.height = 1 / imageSizes.aspectRatio\n break\n\n case `constrained`:\n imageProps.width = args.width || imageSizes.presentationWidth || 1\n imageProps.height = (imageProps.width || 1) / imageSizes.aspectRatio\n }\n\n return imageProps as IGatsbyImageData\n}\n\nconst dedupeAndSortDensities = (values: Array): Array =>\n Array.from(new Set([1, ...values])).sort(sortNumeric)\n\nexport function calculateImageSizes(args: IImageSizeArgs): IImageSizes {\n const {\n width,\n height,\n filename,\n layout = `constrained`,\n sourceMetadata: imgDimensions,\n reporter = { warn },\n breakpoints = DEFAULT_BREAKPOINTS,\n } = args\n\n // check that all dimensions provided are positive\n const userDimensions = { width, height }\n const erroneousUserDimensions = Object.entries(userDimensions).filter(\n ([_, size]) => typeof size === `number` && size < 1\n )\n if (erroneousUserDimensions.length) {\n throw new Error(\n `Specified dimensions for images must be positive numbers (> 0). Problem dimensions you have are ${erroneousUserDimensions\n .map(dim => dim.join(`: `))\n .join(`, `)}`\n )\n }\n\n if (layout === `fixed`) {\n return fixedImageSizes(args)\n } else if (layout === `constrained`) {\n return responsiveImageSizes(args)\n } else if (layout === `fullWidth`) {\n return responsiveImageSizes({ breakpoints, ...args })\n } else {\n reporter.warn(\n `No valid layout was provided for the image at ${filename}. Valid image layouts are fixed, fullWidth, and constrained. Found ${layout}`\n )\n return {\n sizes: [imgDimensions.width],\n presentationWidth: imgDimensions.width,\n presentationHeight: imgDimensions.height,\n aspectRatio: imgDimensions.width / imgDimensions.height,\n unscaledWidth: imgDimensions.width,\n }\n }\n}\nexport function fixedImageSizes({\n filename,\n sourceMetadata: imgDimensions,\n width,\n height,\n fit = `cover`,\n outputPixelDensities = DEFAULT_PIXEL_DENSITIES,\n reporter = { warn },\n}: IImageSizeArgs): IImageSizes {\n let aspectRatio = imgDimensions.width / imgDimensions.height\n // Sort, dedupe and ensure there's a 1\n const densities = dedupeAndSortDensities(outputPixelDensities)\n\n // If both are provided then we need to check the fit\n if (width && height) {\n const calculated = getDimensionsAndAspectRatio(imgDimensions, {\n width,\n height,\n fit,\n })\n width = calculated.width\n height = calculated.height\n aspectRatio = calculated.aspectRatio\n }\n\n if (!width) {\n if (!height) {\n width = DEFAULT_FIXED_WIDTH\n } else {\n width = Math.round(height * aspectRatio)\n }\n } else if (!height) {\n height = Math.round(width / aspectRatio)\n }\n\n const originalWidth = width // will use this for presentationWidth, don't want to lose it\n const isTopSizeOverriden =\n imgDimensions.width < width || imgDimensions.height < (height as number)\n\n // If the image is smaller than requested, warn the user that it's being processed as such\n // print out this message with the necessary information before we overwrite it for sizing\n if (isTopSizeOverriden) {\n const fixedDimension = imgDimensions.width < width ? `width` : `height`\n reporter.warn(`\nThe requested ${fixedDimension} \"${\n fixedDimension === `width` ? width : height\n }px\" for the image ${filename} was larger than the actual image ${fixedDimension} of ${\n imgDimensions[fixedDimension]\n }px. If possible, replace the current image with a larger one.`)\n\n if (fixedDimension === `width`) {\n width = imgDimensions.width\n height = Math.round(width / aspectRatio)\n } else {\n height = imgDimensions.height\n width = height * aspectRatio\n }\n }\n\n const sizes = densities\n .filter(size => size >= 1) // remove smaller densities because fixed images don't need them\n .map(density => Math.round(density * (width as number)))\n .filter(size => size <= imgDimensions.width)\n\n return {\n sizes,\n aspectRatio,\n presentationWidth: originalWidth,\n presentationHeight: Math.round(originalWidth / aspectRatio),\n unscaledWidth: width,\n }\n}\n\nexport function responsiveImageSizes({\n sourceMetadata: imgDimensions,\n width,\n height,\n fit = `cover`,\n outputPixelDensities = DEFAULT_PIXEL_DENSITIES,\n breakpoints,\n layout,\n}: IImageSizeArgs): IImageSizes {\n let sizes\n let aspectRatio = imgDimensions.width / imgDimensions.height\n // Sort, dedupe and ensure there's a 1\n const densities = dedupeAndSortDensities(outputPixelDensities)\n\n // If both are provided then we need to check the fit\n if (width && height) {\n const calculated = getDimensionsAndAspectRatio(imgDimensions, {\n width,\n height,\n fit,\n })\n width = calculated.width\n height = calculated.height\n aspectRatio = calculated.aspectRatio\n }\n\n // Case 1: width of height were passed in, make sure it isn't larger than the actual image\n width = width && Math.min(width, imgDimensions.width)\n height = height && Math.min(height, imgDimensions.height)\n\n // Case 2: neither width or height were passed in, use default size\n if (!width && !height) {\n width = Math.min(DEFAULT_FLUID_WIDTH, imgDimensions.width)\n height = width / aspectRatio\n }\n\n // if it still hasn't been found, calculate width from the derived height.\n // TS isn't smart enough to realise the type for height has been narrowed here\n if (!width) {\n width = (height as number) * aspectRatio\n }\n\n const originalWidth = width\n const isTopSizeOverriden =\n imgDimensions.width < width || imgDimensions.height < (height as number)\n if (isTopSizeOverriden) {\n width = imgDimensions.width\n height = imgDimensions.height\n }\n\n width = Math.round(width)\n\n if (breakpoints?.length > 0) {\n sizes = breakpoints.filter(size => size <= imgDimensions.width)\n\n // If a larger breakpoint has been filtered-out, add the actual image width instead\n if (\n sizes.length < breakpoints.length &&\n !sizes.includes(imgDimensions.width)\n ) {\n sizes.push(imgDimensions.width)\n }\n } else {\n sizes = densities.map(density => Math.round(density * (width as number)))\n sizes = sizes.filter(size => size <= imgDimensions.width)\n }\n\n // ensure that the size passed in is included in the final output\n if (layout === `constrained` && !sizes.includes(width)) {\n sizes.push(width)\n }\n sizes = sizes.sort(sortNumeric)\n return {\n sizes,\n aspectRatio,\n presentationWidth: originalWidth,\n presentationHeight: Math.round(originalWidth / aspectRatio),\n unscaledWidth: width,\n }\n}\n\nexport function getDimensionsAndAspectRatio(\n dimensions,\n options\n): { width: number; height: number; aspectRatio: number } {\n // Calculate the eventual width/height of the image.\n const imageAspectRatio = dimensions.width / dimensions.height\n\n let width = options.width\n let height = options.height\n\n switch (options.fit) {\n case `fill`: {\n width = options.width ? options.width : dimensions.width\n height = options.height ? options.height : dimensions.height\n break\n }\n case `inside`: {\n const widthOption = options.width\n ? options.width\n : Number.MAX_SAFE_INTEGER\n const heightOption = options.height\n ? options.height\n : Number.MAX_SAFE_INTEGER\n\n width = Math.min(widthOption, Math.round(heightOption * imageAspectRatio))\n height = Math.min(\n heightOption,\n Math.round(widthOption / imageAspectRatio)\n )\n break\n }\n case `outside`: {\n const widthOption = options.width ? options.width : 0\n const heightOption = options.height ? options.height : 0\n\n width = Math.max(widthOption, Math.round(heightOption * imageAspectRatio))\n height = Math.max(\n heightOption,\n Math.round(widthOption / imageAspectRatio)\n )\n break\n }\n\n default: {\n if (options.width && !options.height) {\n width = options.width\n height = Math.round(options.width / imageAspectRatio)\n }\n\n if (options.height && !options.width) {\n width = Math.round(options.height * imageAspectRatio)\n height = options.height\n }\n }\n }\n\n return {\n width,\n height,\n aspectRatio: width / height,\n }\n}\n","/* global GATSBY___IMAGE */\nimport { generateImageData, EVERY_BREAKPOINT } from \"../image-utils\"\nimport type { CSSProperties, HTMLAttributes, ImgHTMLAttributes } from \"react\"\nimport type { Node } from \"gatsby\"\nimport type { PlaceholderProps } from \"./placeholder\"\nimport type { MainImageProps } from \"./main-image\"\nimport type { IGatsbyImageData } from \"./gatsby-image.browser\"\nimport type {\n IGatsbyImageHelperArgs,\n Layout,\n IImage,\n ImageFormat,\n} from \"../image-utils\"\n\n// Native lazy-loading support: https://addyosmani.com/blog/lazy-loading/\nexport const hasNativeLazyLoadSupport = (): boolean =>\n typeof HTMLImageElement !== `undefined` &&\n `loading` in HTMLImageElement.prototype\n\nexport function gatsbyImageIsInstalled(): boolean {\n return typeof GATSBY___IMAGE !== `undefined` && GATSBY___IMAGE\n}\n\nexport type IGatsbyImageDataParent = T & {\n gatsbyImageData: IGatsbyImageData\n}\nexport type IGatsbyImageParent = T & {\n gatsbyImage: IGatsbyImageData\n}\nexport type FileNode = Partial & {\n childImageSharp?: IGatsbyImageDataParent>\n}\n\nconst isGatsbyImageData = (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n node: IGatsbyImageData | any\n): node is IGatsbyImageData =>\n // 🦆 check for a deep prop to be sure this is a valid gatsbyImageData object\n Boolean(node?.images?.fallback?.src)\n\nconst isGatsbyImageDataParent = (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n node: IGatsbyImageDataParent | any\n): node is IGatsbyImageDataParent => Boolean(node?.gatsbyImageData)\n\nconst isGatsbyImageParent = (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n node: IGatsbyImageParent | any\n): node is IGatsbyImageParent => Boolean(node?.gatsbyImage)\n\nexport type ImageDataLike =\n | FileNode\n | IGatsbyImageDataParent\n | IGatsbyImageParent\n | IGatsbyImageData\n\nexport const getImage = (\n node: ImageDataLike | null\n): IGatsbyImageData | undefined => {\n // This checks both for gatsbyImageData and gatsbyImage\n if (isGatsbyImageData(node)) {\n return node\n }\n // gatsbyImageData GraphQL field\n if (isGatsbyImageDataParent(node)) {\n return node.gatsbyImageData\n }\n // gatsbyImage GraphQL field for Gatsby's Image CDN service\n if (isGatsbyImageParent(node)) {\n return node.gatsbyImage\n }\n return node?.childImageSharp?.gatsbyImageData\n}\n\nexport const getSrc = (node: ImageDataLike): string | undefined =>\n getImage(node)?.images?.fallback?.src\n\nexport const getSrcSet = (node: ImageDataLike): string | undefined =>\n getImage(node)?.images?.fallback?.srcSet\n\nexport function getWrapperProps(\n width: number,\n height: number,\n layout: Layout\n): Pick, \"className\" | \"style\"> & {\n \"data-gatsby-image-wrapper\": string\n} {\n const wrapperStyle: CSSProperties = {}\n\n let className = `gatsby-image-wrapper`\n\n // If the plugin isn't installed we need to apply the styles inline\n if (!gatsbyImageIsInstalled()) {\n wrapperStyle.position = `relative`\n wrapperStyle.overflow = `hidden`\n }\n\n if (layout === `fixed`) {\n wrapperStyle.width = width\n wrapperStyle.height = height\n } else if (layout === `constrained`) {\n if (!gatsbyImageIsInstalled()) {\n wrapperStyle.display = `inline-block`\n wrapperStyle.verticalAlign = `top`\n }\n className = `gatsby-image-wrapper gatsby-image-wrapper-constrained`\n }\n\n return {\n className,\n \"data-gatsby-image-wrapper\": ``,\n style: wrapperStyle,\n }\n}\n\nexport interface IUrlBuilderArgs {\n width: number\n height: number\n baseUrl: string\n format: ImageFormat\n options: OptionsType\n}\nexport interface IGetImageDataArgs> {\n baseUrl: string\n /**\n * For constrained and fixed images, the size of the image element\n */\n width?: number\n height?: number\n /**\n * If available, pass the source image width and height\n */\n sourceWidth?: number\n sourceHeight?: number\n /**\n * If only one dimension is passed, then this will be used to calculate the other.\n */\n aspectRatio?: number\n layout?: Layout\n /**\n * Returns a URL based on the passed arguments. Should be a pure function\n */\n urlBuilder: (args: IUrlBuilderArgs) => string\n\n /**\n * Should be a data URI\n */\n placeholderURL?: string\n backgroundColor?: string\n /**\n * Used in error messages etc\n */\n pluginName?: string\n\n /**\n * If you do not support auto-format, pass an array of image types here\n */\n formats?: Array\n\n breakpoints?: Array\n\n /**\n * Passed to the urlBuilder function\n */\n options?: OptionsType\n}\n\n/**\n * Use this hook to generate gatsby-plugin-image data in the browser.\n */\nexport function getImageData({\n baseUrl,\n urlBuilder,\n sourceWidth,\n sourceHeight,\n pluginName = `getImageData`,\n formats = [`auto`],\n breakpoints,\n options,\n ...props\n}: IGetImageDataArgs): IGatsbyImageData {\n if (\n !breakpoints?.length &&\n (props.layout === `fullWidth` || (props.layout as string) === `FULL_WIDTH`)\n ) {\n breakpoints = EVERY_BREAKPOINT\n }\n const generateImageSource = (\n baseUrl: string,\n width: number,\n height?: number,\n format?: ImageFormat\n ): IImage => {\n return {\n width,\n height,\n format,\n src: urlBuilder({ baseUrl, width, height, options, format }),\n }\n }\n\n const sourceMetadata: IGatsbyImageHelperArgs[\"sourceMetadata\"] = {\n width: sourceWidth,\n height: sourceHeight,\n format: `auto`,\n }\n\n const args: IGatsbyImageHelperArgs = {\n ...props,\n pluginName,\n generateImageSource,\n filename: baseUrl,\n formats,\n breakpoints,\n sourceMetadata,\n }\n return generateImageData(args)\n}\n\nexport function getMainProps(\n isLoading: boolean,\n isLoaded: boolean,\n images: IGatsbyImageData[\"images\"],\n loading?: \"eager\" | \"lazy\",\n style: CSSProperties = {}\n): Partial {\n // fallback when it's not configured in gatsby-config.\n if (!gatsbyImageIsInstalled()) {\n style = {\n height: `100%`,\n left: 0,\n position: `absolute`,\n top: 0,\n transform: `translateZ(0)`,\n transition: `opacity 250ms linear`,\n width: `100%`,\n willChange: `opacity`,\n ...style,\n }\n }\n\n const result = {\n ...images,\n loading,\n shouldLoad: isLoading,\n \"data-main-image\": ``,\n style: {\n ...style,\n opacity: isLoaded ? 1 : 0,\n },\n }\n\n return result\n}\n\nexport type PlaceholderImageAttrs = ImgHTMLAttributes &\n Pick & {\n \"data-placeholder-image\"?: string\n }\n\nexport function getPlaceholderProps(\n placeholder: PlaceholderImageAttrs | undefined,\n isLoaded: boolean,\n layout: Layout,\n width?: number,\n height?: number,\n backgroundColor?: string,\n objectFit?: CSSProperties[\"objectFit\"],\n objectPosition?: CSSProperties[\"objectPosition\"]\n): PlaceholderImageAttrs {\n const wrapperStyle: CSSProperties = {}\n\n if (backgroundColor) {\n wrapperStyle.backgroundColor = backgroundColor\n\n if (layout === `fixed`) {\n wrapperStyle.width = width\n wrapperStyle.height = height\n wrapperStyle.backgroundColor = backgroundColor\n wrapperStyle.position = `relative`\n } else if (layout === `constrained`) {\n wrapperStyle.position = `absolute`\n wrapperStyle.top = 0\n wrapperStyle.left = 0\n wrapperStyle.bottom = 0\n wrapperStyle.right = 0\n } else if (layout === `fullWidth`) {\n wrapperStyle.position = `absolute`\n wrapperStyle.top = 0\n wrapperStyle.left = 0\n wrapperStyle.bottom = 0\n wrapperStyle.right = 0\n }\n }\n\n if (objectFit) {\n wrapperStyle.objectFit = objectFit\n }\n\n if (objectPosition) {\n wrapperStyle.objectPosition = objectPosition\n }\n const result: PlaceholderImageAttrs = {\n ...placeholder,\n \"aria-hidden\": true,\n \"data-placeholder-image\": ``,\n style: {\n opacity: isLoaded ? 0 : 1,\n transition: `opacity 500ms linear`,\n ...wrapperStyle,\n },\n }\n\n // fallback when it's not configured in gatsby-config.\n if (!gatsbyImageIsInstalled()) {\n result.style = {\n height: `100%`,\n left: 0,\n position: `absolute`,\n top: 0,\n width: `100%`,\n }\n }\n\n return result\n}\n\nexport interface IArtDirectedImage {\n media: string\n image: IGatsbyImageData\n}\n\n/**\n * Generate a Gatsby image data object with multiple, art-directed images that display at different\n * resolutions.\n *\n * @param defaultImage The image displayed when no media query matches.\n * It is also used for all other settings applied to the image, such as width, height and layout.\n * You should pass a className to the component with media queries to adjust the size of the container,\n * as this cannot be adjusted automatically.\n * @param artDirected Array of objects which each contains a `media` string which is a media query\n * such as `(min-width: 320px)`, and the image object to use when that query matches.\n */\nexport function withArtDirection(\n defaultImage: IGatsbyImageData,\n artDirected: Array\n): IGatsbyImageData {\n const { images, placeholder, ...props } = defaultImage\n const output: IGatsbyImageData = {\n ...props,\n images: {\n ...images,\n sources: [],\n },\n placeholder: placeholder && {\n ...placeholder,\n sources: [],\n },\n }\n\n artDirected.forEach(({ media, image }) => {\n if (!media) {\n if (process.env.NODE_ENV === `development`) {\n console.warn(\n \"[gatsby-plugin-image] All art-directed images passed to must have a value set for `media`. Skipping.\"\n )\n }\n return\n }\n\n if (\n image.layout !== defaultImage.layout &&\n process.env.NODE_ENV === `development`\n ) {\n console.warn(\n `[gatsby-plugin-image] Mismatched image layout: expected \"${defaultImage.layout}\" but received \"${image.layout}\". All art-directed images use the same layout as the default image`\n )\n }\n\n output.images.sources.push(\n ...image.images.sources.map(source => {\n return { ...source, media }\n }),\n {\n media,\n srcSet: image.images.fallback.srcSet,\n }\n )\n\n if (!output.placeholder) {\n return\n }\n\n output.placeholder.sources.push({\n media,\n srcSet: image.placeholder.fallback,\n })\n })\n output.images.sources.push(...images.sources)\n if (placeholder?.sources) {\n output.placeholder?.sources.push(...placeholder.sources)\n }\n return output\n}\n","import React, { Fragment, FunctionComponent, 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{microTask as i}from'./micro-task.js';function o(){let n=[],r={addEventListener(e,t,s,a){return e.addEventListener(t,s,a),r.add(()=>e.removeEventListener(t,s,a))},requestAnimationFrame(...e){let t=requestAnimationFrame(...e);return r.add(()=>cancelAnimationFrame(t))},nextFrame(...e){return r.requestAnimationFrame(()=>r.requestAnimationFrame(...e))},setTimeout(...e){let t=setTimeout(...e);return r.add(()=>clearTimeout(t))},microTask(...e){let t={current:!0};return i(()=>{t.current&&e[0]()}),r.add(()=>{t.current=!1})},style(e,t,s){let a=e.style.getPropertyValue(t);return Object.assign(e.style,{[t]:s}),this.add(()=>{Object.assign(e.style,{[t]:a})})},group(e){let t=o();return e(t),this.add(()=>t.dispose())},add(e){return n.includes(e)||n.push(e),()=>{let t=n.indexOf(e);if(t>=0)for(let s of n.splice(t,1))s()}},dispose(){for(let e of n.splice(0))e()}};return r}export{o as disposables};\n","function t(e){typeof queueMicrotask==\"function\"?queueMicrotask(e):Promise.resolve().then(e).catch(o=>setTimeout(()=>{throw o}))}export{t as microTask};\n","import{useEffect as s,useState as o}from\"react\";import{disposables as t}from'../utils/disposables.js';function p(){let[e]=o(t);return s(()=>()=>e.dispose(),[e]),e}export{p as useDisposables};\n","import*as t from\"react\";import{env as f}from'../utils/env.js';function s(){let r=typeof document==\"undefined\";return\"useSyncExternalStore\"in t?(o=>o.useSyncExternalStore)(t)(()=>()=>{},()=>!1,()=>!r):!1}function l(){let r=s(),[e,n]=t.useState(f.isHandoffComplete);return e&&f.isHandoffComplete===!1&&n(!1),t.useEffect(()=>{e!==!0&&n(!0)},[e]),t.useEffect(()=>f.handoff(),[]),r?!1:e}export{l as useServerHandoffComplete};\n","var T,b;import{useRef as c,useState as S}from\"react\";import{disposables as m}from'../utils/disposables.js';import{useDisposables as g}from'./use-disposables.js';import{useFlags as y}from'./use-flags.js';import{useIsoMorphicEffect as A}from'./use-iso-morphic-effect.js';typeof process!=\"undefined\"&&typeof globalThis!=\"undefined\"&&typeof Element!=\"undefined\"&&((T=process==null?void 0:process.env)==null?void 0:T[\"NODE_ENV\"])===\"test\"&&typeof((b=Element==null?void 0:Element.prototype)==null?void 0:b.getAnimations)==\"undefined\"&&(Element.prototype.getAnimations=function(){return console.warn([\"Headless UI has polyfilled `Element.prototype.getAnimations` for your tests.\",\"Please install a proper polyfill e.g. `jsdom-testing-mocks`, to silence these warnings.\",\"\",\"Example usage:\",\"```js\",\"import { mockAnimationsApi } from 'jsdom-testing-mocks'\",\"mockAnimationsApi()\",\"```\"].join(`\n`)),[]});var L=(r=>(r[r.None=0]=\"None\",r[r.Closed=1]=\"Closed\",r[r.Enter=2]=\"Enter\",r[r.Leave=4]=\"Leave\",r))(L||{});function R(t){let n={};for(let e in t)t[e]===!0&&(n[`data-${e}`]=\"\");return n}function x(t,n,e,i){let[r,o]=S(e),{hasFlag:s,addFlag:a,removeFlag:l}=y(t&&r?3:0),u=c(!1),f=c(!1),E=g();return A(()=>{var d;if(t){if(e&&o(!0),!n){e&&a(3);return}return(d=i==null?void 0:i.start)==null||d.call(i,e),C(n,{inFlight:u,prepare(){f.current?f.current=!1:f.current=u.current,u.current=!0,!f.current&&(e?(a(3),l(4)):(a(4),l(2)))},run(){f.current?e?(l(3),a(4)):(l(4),a(3)):e?l(1):a(1)},done(){var p;f.current&&typeof n.getAnimations==\"function\"&&n.getAnimations().length>0||(u.current=!1,l(7),e||o(!1),(p=i==null?void 0:i.end)==null||p.call(i,e))}})}},[t,e,n,E]),t?[r,{closed:s(1),enter:s(2),leave:s(4),transition:s(2)||s(4)}]:[e,{closed:void 0,enter:void 0,leave:void 0,transition:void 0}]}function C(t,{prepare:n,run:e,done:i,inFlight:r}){let o=m();return j(t,{prepare:n,inFlight:r}),o.nextFrame(()=>{e(),o.requestAnimationFrame(()=>{o.add(M(t,i))})}),o.dispose}function M(t,n){var o,s;let e=m();if(!t)return e.dispose;let i=!1;e.add(()=>{i=!0});let r=(s=(o=t.getAnimations)==null?void 0:o.call(t).filter(a=>a instanceof CSSTransition))!=null?s:[];return r.length===0?(n(),e.dispose):(Promise.allSettled(r.map(a=>a.finished)).then(()=>{i||n()}),e.dispose)}function j(t,{inFlight:n,prepare:e}){if(n!=null&&n.current){e();return}let i=t.style.transition;t.style.transition=\"none\",e(),t.offsetHeight,t.style.transition=i}export{R as transitionDataAttributes,x as useTransition};\n","import{useCallback as r,useState as b}from\"react\";function c(u=0){let[t,l]=b(u),g=r(e=>l(e),[t]),s=r(e=>l(a=>a|e),[t]),m=r(e=>(t&e)===e,[t]),n=r(e=>l(a=>a&~e),[l]),F=r(e=>l(a=>a^e),[l]);return{flags:t,setFlag:g,addFlag:s,hasFlag:m,removeFlag:n,toggleFlag:F}}export{c as useFlags};\n","import r,{createContext as l,useContext as d}from\"react\";let n=l(null);n.displayName=\"OpenClosedContext\";var i=(e=>(e[e.Open=1]=\"Open\",e[e.Closed=2]=\"Closed\",e[e.Closing=4]=\"Closing\",e[e.Opening=8]=\"Opening\",e))(i||{});function u(){return d(n)}function c({value:o,children:t}){return r.createElement(n.Provider,{value:o},t)}function s({children:o}){return r.createElement(n.Provider,{value:null},o)}export{c as OpenClosedProvider,s as ResetOpenClosedProvider,i as State,u as useOpenClosed};\n","\"use client\";import m,{Fragment as O,createContext as ne,useContext as q,useEffect as ge,useMemo as ie,useRef as b,useState as V}from\"react\";import{useDisposables as ve}from'../../hooks/use-disposables.js';import{useEvent as E}from'../../hooks/use-event.js';import{useIsMounted as be}from'../../hooks/use-is-mounted.js';import{useIsoMorphicEffect as D}from'../../hooks/use-iso-morphic-effect.js';import{useLatestValue as Ee}from'../../hooks/use-latest-value.js';import{useServerHandoffComplete as re}from'../../hooks/use-server-handoff-complete.js';import{useSyncRefs as oe}from'../../hooks/use-sync-refs.js';import{transitionDataAttributes as Se,useTransition as Re}from'../../hooks/use-transition.js';import{OpenClosedProvider as ye,State as x,useOpenClosed as se}from'../../internal/open-closed.js';import{classNames as Pe}from'../../utils/class-names.js';import{match as le}from'../../utils/match.js';import{RenderFeatures as xe,RenderStrategy as P,compact as Ne,forwardRefWithAs as J,useRender as ae}from'../../utils/render.js';function ue(e){var t;return!!(e.enter||e.enterFrom||e.enterTo||e.leave||e.leaveFrom||e.leaveTo)||((t=e.as)!=null?t:de)!==O||m.Children.count(e.children)===1}let w=ne(null);w.displayName=\"TransitionContext\";var _e=(n=>(n.Visible=\"visible\",n.Hidden=\"hidden\",n))(_e||{});function De(){let e=q(w);if(e===null)throw new Error(\"A is used but it is missing a parent or .\");return e}function He(){let e=q(M);if(e===null)throw new Error(\"A is used but it is missing a parent or .\");return e}let M=ne(null);M.displayName=\"NestingContext\";function U(e){return\"children\"in e?U(e.children):e.current.filter(({el:t})=>t.current!==null).filter(({state:t})=>t===\"visible\").length>0}function Te(e,t){let n=Ee(e),l=b([]),S=be(),R=ve(),d=E((o,i=P.Hidden)=>{let a=l.current.findIndex(({el:s})=>s===o);a!==-1&&(le(i,{[P.Unmount](){l.current.splice(a,1)},[P.Hidden](){l.current[a].state=\"hidden\"}}),R.microTask(()=>{var s;!U(l)&&S.current&&((s=n.current)==null||s.call(n))}))}),y=E(o=>{let i=l.current.find(({el:a})=>a===o);return i?i.state!==\"visible\"&&(i.state=\"visible\"):l.current.push({el:o,state:\"visible\"}),()=>d(o,P.Unmount)}),p=b([]),c=b(Promise.resolve()),C=b({enter:[],leave:[]}),h=E((o,i,a)=>{p.current.splice(0),t&&(t.chains.current[i]=t.chains.current[i].filter(([s])=>s!==o)),t==null||t.chains.current[i].push([o,new Promise(s=>{p.current.push(s)})]),t==null||t.chains.current[i].push([o,new Promise(s=>{Promise.all(C.current[i].map(([r,f])=>f)).then(()=>s())})]),i===\"enter\"?c.current=c.current.then(()=>t==null?void 0:t.wait.current).then(()=>a(i)):a(i)}),g=E((o,i,a)=>{Promise.all(C.current[i].splice(0).map(([s,r])=>r)).then(()=>{var s;(s=p.current.shift())==null||s()}).then(()=>a(i))});return ie(()=>({children:l,register:y,unregister:d,onStart:h,onStop:g,wait:c,chains:C}),[y,d,l,h,g,C,c])}let de=O,fe=xe.RenderStrategy;function Ae(e,t){var ee,te;let{transition:n=!0,beforeEnter:l,afterEnter:S,beforeLeave:R,afterLeave:d,enter:y,enterFrom:p,enterTo:c,entered:C,leave:h,leaveFrom:g,leaveTo:o,...i}=e,[a,s]=V(null),r=b(null),f=ue(e),j=oe(...f?[r,t,s]:t===null?[]:[t]),H=(ee=i.unmount)==null||ee?P.Unmount:P.Hidden,{show:u,appear:z,initial:K}=De(),[v,G]=V(u?\"visible\":\"hidden\"),Q=He(),{register:A,unregister:I}=Q;D(()=>A(r),[A,r]),D(()=>{if(H===P.Hidden&&r.current){if(u&&v!==\"visible\"){G(\"visible\");return}return le(v,{[\"hidden\"]:()=>I(r),[\"visible\"]:()=>A(r)})}},[v,r,A,I,u,H]);let B=re();D(()=>{if(f&&B&&v===\"visible\"&&r.current===null)throw new Error(\"Did you forget to passthrough the `ref` to the actual DOM node?\")},[r,v,B,f]);let ce=K&&!z,Y=z&&u&&K,W=b(!1),L=Te(()=>{W.current||(G(\"hidden\"),I(r))},Q),Z=E(k=>{W.current=!0;let F=k?\"enter\":\"leave\";L.onStart(r,F,_=>{_===\"enter\"?l==null||l():_===\"leave\"&&(R==null||R())})}),$=E(k=>{let F=k?\"enter\":\"leave\";W.current=!1,L.onStop(r,F,_=>{_===\"enter\"?S==null||S():_===\"leave\"&&(d==null||d())}),F===\"leave\"&&!U(L)&&(G(\"hidden\"),I(r))});ge(()=>{f&&n||(Z(u),$(u))},[u,f,n]);let pe=(()=>!(!n||!f||!B||ce))(),[,T]=Re(pe,a,u,{start:Z,end:$}),Ce=Ne({ref:j,className:((te=Pe(i.className,Y&&y,Y&&p,T.enter&&y,T.enter&&T.closed&&p,T.enter&&!T.closed&&c,T.leave&&h,T.leave&&!T.closed&&g,T.leave&&T.closed&&o,!T.transition&&u&&C))==null?void 0:te.trim())||void 0,...Se(T)}),N=0;v===\"visible\"&&(N|=x.Open),v===\"hidden\"&&(N|=x.Closed),T.enter&&(N|=x.Opening),T.leave&&(N|=x.Closing);let he=ae();return m.createElement(M.Provider,{value:L},m.createElement(ye,{value:N},he({ourProps:Ce,theirProps:i,defaultTag:de,features:fe,visible:v===\"visible\",name:\"Transition.Child\"})))}function Ie(e,t){let{show:n,appear:l=!1,unmount:S=!0,...R}=e,d=b(null),y=ue(e),p=oe(...y?[d,t]:t===null?[]:[t]);re();let c=se();if(n===void 0&&c!==null&&(n=(c&x.Open)===x.Open),n===void 0)throw new Error(\"A is used but it is missing a `show={true | false}` prop.\");let[C,h]=V(n?\"visible\":\"hidden\"),g=Te(()=>{n||h(\"hidden\")}),[o,i]=V(!0),a=b([n]);D(()=>{o!==!1&&a.current[a.current.length-1]!==n&&(a.current.push(n),i(!1))},[a,n]);let s=ie(()=>({show:n,appear:l,initial:o}),[n,l,o]);D(()=>{n?h(\"visible\"):!U(g)&&d.current!==null&&h(\"hidden\")},[n,g]);let r={unmount:S},f=E(()=>{var u;o&&i(!1),(u=e.beforeEnter)==null||u.call(e)}),j=E(()=>{var u;o&&i(!1),(u=e.beforeLeave)==null||u.call(e)}),H=ae();return m.createElement(M.Provider,{value:g},m.createElement(w.Provider,{value:s},H({ourProps:{...r,as:O,children:m.createElement(me,{ref:p,...r,...R,beforeEnter:f,beforeLeave:j})},theirProps:{},defaultTag:O,features:fe,visible:C===\"visible\",name:\"Transition\"})))}function Le(e,t){let n=q(w)!==null,l=se()!==null;return m.createElement(m.Fragment,null,!n&&l?m.createElement(X,{ref:t,...e}):m.createElement(me,{ref:t,...e}))}let X=J(Ie),me=J(Ae),Fe=J(Le),ze=Object.assign(X,{Child:Fe,Root:X});export{ze as Transition,Fe as TransitionChild};\n","import{useRef as r}from\"react\";import{useIsoMorphicEffect as t}from'./use-iso-morphic-effect.js';function f(){let e=r(!1);return t(()=>(e.current=!0,()=>{e.current=!1}),[]),e}export{f as useIsMounted};\n","import React from \"react\"\nimport { useStaticQuery, graphql } from \"gatsby\"\nimport { GatsbyImage } from \"gatsby-plugin-image\"\n\n/*\n * This component is built using `gatsby-image` to automatically serve optimized\n * images with lazy loading and reduced file sizes. The image is loaded using a\n * `useStaticQuery`, which allows us to load the image from directly within this\n * component, rather than having to pass the image data down from pages.\n *\n * For more information, see the docs:\n * - `gatsby-image`: https://gatsby.dev/gatsby-image\n * - `useStaticQuery`: https://www.gatsbyjs.com/docs/use-static-query/\n */\n\n\nconst Logo = () => {\n const data = useStaticQuery(graphql`{\n file(relativePath: {eq: \"logo.png\"}) {\n childImageSharp {\n gatsbyImageData(height: 40, layout: CONSTRAINED)\n }\n }\n}\n`)\n\n if (!data?.file?.childImageSharp?.gatsbyImageData) {\n return
Picture not found
\n }\n\n return ;\n}\n\nexport default Logo","import { Link } from \"gatsby\"\nimport React, { useState } from \"react\"\nimport { Transition } from '@headlessui/react';\nimport { OutboundLink } from \"gatsby-plugin-google-gtag\"\n\nimport Logo from './logo';\n\nconst Header = ({ siteTitle = '' }) => {\n const [isMobileMenuOpen, setIsMobileMenuOpen] = useState(false);\n return (\n <>\n
\n
\n \n
\n \n
\n \n
\n
\n {/* Mobile Menu */}\n \n
\n
\n
\n
\n
\n {siteTitle}\n \n
\n
\n \n
\n
\n
\n
\n
\n {/* Scraping Platforms */}\n \n APIs\n \n \n Scrapers\n \n \n Pricing\n \n \n Blog\n \n {/* \n FAQs\n */}\n {/* \n Resources\n */}\n {/* \n Docs\n */}\n {/* \n Blog\n */}\n \n Login\n \n \n Sign Up\n \n
\n
\n
\n
\n
\n \n )\n}\n\nexport default Header\n","import { Link } from 'gatsby';\nimport React from 'react';\n\nimport { FaXTwitter, FaLinkedin, FaDiscord, FaX } from \"react-icons/fa6\";\n\n\nconst Footer = () => (\n
\n
\n
\n

Privacy Policy

\n

Terms of Service

\n

Platforms

\n
\n
\n
\n

\n © {new Date().getFullYear()} Unwrangle.com. All rights reserved. \n

\n \n \n \n \n \n \n {/* \n Affiliate Program\n */}\n
\n
\n
\n
\n)\n\n\n\nexport default Footer;","/**\n * Layout component that queries for data\n * with Gatsby's useStaticQuery component\n *\n * See: https://www.gatsbyjs.com/docs/use-static-query/\n */\nimport \"@fontsource/inter\";\n\nimport React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { useStaticQuery, graphql } from \"gatsby\";\n\nimport Header from \"./header\";\nimport Footer from './footer';\n\nconst Layout = ({ children }) => {\n const data = useStaticQuery(graphql`\n query SiteTitleQuery {\n site {\n siteMetadata {\n title\n }\n }\n }\n `)\n\n return (\n <>\n
\n {children}\n