{"version":3,"sources":["webpack://_N_E/./src/components/ui/section-wrapper.tsx","webpack://_N_E/./src/components/ui/text.tsx","webpack://_N_E/./node_modules/@sanity/block-content-to-hyperscript/node_modules/@sanity/image-url/lib/browser/image-url.umd.js","webpack://_N_E/./src/components/seo/seo.tsx","webpack://_N_E/./src/components/ui/section.tsx","webpack://_N_E/./node_modules/@sanity/block-content-to-hyperscript/lib/serializers.js","webpack://_N_E/./node_modules/@sanity/block-content-to-react/lib/targets/dom.js","webpack://_N_E/./node_modules/@sanity/block-content-to-hyperscript/internals.js","webpack://_N_E/./src/styles/colors.ts","webpack://_N_E/./src/styles/spacing.ts","webpack://_N_E/./src/styles/font-size.ts","webpack://_N_E/./src/styles/theme-light.ts","webpack://_N_E/./node_modules/@sanity/block-content-to-hyperscript/lib/getImageUrl.js","webpack://_N_E/./src/styles/media-queries.ts","webpack://_N_E/./node_modules/@sanity/block-content-to-hyperscript/lib/blocksToNodes.js","webpack://_N_E/./src/styles/theme-dark.ts","webpack://_N_E/./src/components/switch-theme/switch-theme.tsx","webpack://_N_E/./src/styles/border-radius.ts","webpack://_N_E/./node_modules/@sanity/block-content-to-hyperscript/lib/mergeSerializers.js","webpack://_N_E/./node_modules/@sanity/block-content-to-hyperscript/lib/internals.js","webpack://_N_E/./node_modules/@sanity/block-content-to-hyperscript/lib/buildMarksTree.js","webpack://_N_E/./node_modules/@sanity/block-content-to-react/lib/BlockContent.js","webpack://_N_E/./node_modules/@sanity/block-content-to-hyperscript/node_modules/@sanity/generate-help-url/index.js","webpack://_N_E/./node_modules/@sanity/block-content-to-hyperscript/lib/nestLists.js","webpack://_N_E/./node_modules/@sanity/block-content-to-hyperscript/lib/generateKeys.js","webpack://_N_E/./src/styles/z-index.ts"],"names":["SectionWrapper","styled","div","noPadding","rem","theme","mediaQueries","medium","large","textStyles","css","components","text","Text","p","size","centerText","fontSize","module","exports","_extends","Object","assign","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","this","_unsupportedIterableToArray","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","arr","len","arr2","_createForOfIteratorHelperLoose","Symbol","iterator","isArray","done","value","TypeError","next","bind","example","parseAssetId","ref","_ref$split","split","id","dimensionString","format","Error","_dimensionString$spli","width","height","isFinite","isRef","src","_ref","isAsset","_id","isAssetStub","asset","url","parseSource","image","isUrl","urlToId","img","crop","hotspot","applyDefaults","replace","result","left","top","bottom","right","x","y","SPEC_NAME_TO_URL_NAME_MAPPINGS","urlForImage","options","spec","cropLeft","Math","round","cropTop","hotSpotVerticalRadius","hotSpotHorizontalRadius","hotSpotCenterX","hotSpotCenterY","rect","focalPoint","ignoreImageParams","fit","specToImageUrl","cdnUrl","baseUrl","filename","projectId","dataset","params","_spec$rect","push","bg","flip","flipHorizontal","flipVertical","filter","Boolean","join","forEach","mapping","specName","param","encodeURIComponent","cropRect","imgWidth","imgHeight","desiredAspectRatio","_width","_height","_left","_top","max","floor","validFits","validCrops","validAutoModes","isSanityClient","client","clientConfig","rewriteSpecName","_step","_iterator","entry","urlBuilder","_client$clientConfig","apiUrl","apiHost","ImageUrlBuilder","parent","_proto","withOptions","newOptions","_dataset","_projectId","_bg","dpr","_dpr","maxWidth","_maxWidth","minWidth","_minWidth","maxHeight","_maxHeight","minHeight","_minHeight","blur","_blur","sharpen","_sharpen","_format","invert","_invert","orientation","_orientation","quality","_quality","forceDownload","download","indexOf","saturation","_saturation","auto","factory","SEO","pageTitle","title","description","siteSettings","useSiteSettings","ogImage","ogImageUrl","urlFor","twitterCardImageUrl","pageDescription","rel","sizes","href","type","content","property","Section","section","textAlign","background","defaultProps","objectAssign","getImageUrl","h","serializerOpts","serializeOptions","useDashedStyles","RawMarkSerializer","tag","props","children","defaultSerializers","types","block","style","node","isInline","marks","strong","em","code","underline","textDecoration","link","mark","list","listItem","serializers","blockType","_type","serializer","concat","span","_props$node","markType","console","warn","markFallback","hardBreak","container","undefined","empty","serializeSpan","index","map","child","serializeNode","serializedNode","_key","React","_getSerializers","getSerializers","createElement","renderProps","nestMarks","palette","black","white","blue","lightBlue","greyLight","grey","greyDark","redDark","yellow","orange","orangeDark","green","greenLight","teal","moderate","high","extreme","catastrophic","preview","small","xLarge","borderRadius","colors","button","default","dark","secondary","transparent","border","heading","space","zIndex","generateHelpUrl","enc","materializeError","query","imageOptions","keys","getQueryString","baseUnits","xlarge","smallMax","buildMarksTree","nestLists","generateKeys","mergeSerializers","optionProps","defaults","isListItem","properties","rawBlocks","blocks","keyedBlocks","listNestMode","reduce","opts","siblings","level","serializeList","serializeListItem","findListItemIndex","isSpan","blockProps","serializeBlock","renderContainerOnSingleChild","nodes","containerProps","className","SwitchTheme","currentTheme","to","themeDark","themeLight","_typeof","obj","userSerializers","acc","_blocksToNodes","blocksToNodes","renderNode","defaultMarks","sortMarksByOccurences","spans","markOccurences","occurences","siblingIndex","sibling","sortByOccurence","sortMarks","sort","markA","markB","aOccurences","bOccurences","aDefaultPos","bDefaultPos","markDefs","sortedMarks","rootNode","nodeStack","marksNeeded","pos","markKey","splice","currentNode","findLastParentNode","find","def","lines","line","PropTypes","internals","_require","SanityBlockContent","customSerializers","propTypes","string","bool","object","shape","func","oneOfType","arrayOf","isRequired","slug","isListBlock","blockMatchesList","listFromBlock","lastChild","findListMatching","matching","filterOnType","currentList","mode","tree","newList","lastListItem","newLastChild","match","_match","checksum","str","hash","strlen","charCodeAt","item","JSON","stringify"],"mappings":"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","file":"static/chunks/84e1c2b3beba2601080ec0c33f9f8ccce74943cb.18a1f883726ba507e05f.js","sourcesContent":["import { rem } from 'polished';\nimport styled from 'styled-components';\n\ninterface WrapperProps {\n noPadding?: boolean;\n}\n\nexport const SectionWrapper = styled.div`\n --padding: ${({ noPadding }) => (noPadding ? 0 : rem(32))};\n\n max-width: calc(640px + (var(--padding) * 2));\n margin: 0 auto;\n padding: var(--padding);\n\n ${({ theme }) => theme.mediaQueries.medium} {\n --padding: ${({ noPadding }) => (noPadding ? 0 : rem(60))};\n }\n\n ${({ theme }) => theme.mediaQueries.large} {\n --padding: ${({ noPadding }) => (noPadding ? `0 ${rem(100)}` : rem(100))};\n }\n`;\n","import { rem } from 'polished';\nimport styled, { css, Theme } from 'styled-components';\ninterface Props {\n size?: keyof Theme['fontSize']['text'];\n centerText?: boolean;\n}\n\nexport const textStyles = css`\n display: block;\n margin: 0;\n margin-top: ${rem(20)};\n margin-bottom: ${rem(40)};\n color: ${({ theme }) => theme.components.text.text};\n line-height: 1.3;\n`;\n\nexport const Text = styled.p`\n ${({ theme, size = 'medium', centerText = false }) => {\n return css`\n ${textStyles}\n\n font-size: ${theme.fontSize.text[size]};\n text-align: ${centerText ? 'center' : 'inherit'};\n `;\n }}\n`;\n","(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n (global = global || self, global.SanityImageUrlBuilder = factory());\n}(this, (function () {\n function _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n }\n\n function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }\n\n function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n }\n\n function _createForOfIteratorHelperLoose(o) {\n var i = 0;\n\n if (typeof Symbol === \"undefined\" || o[Symbol.iterator] == null) {\n if (Array.isArray(o) || (o = _unsupportedIterableToArray(o))) return function () {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n };\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n\n i = o[Symbol.iterator]();\n return i.next.bind(i);\n }\n\n var example = 'image-Tb9Ew8CXIwaY6R1kjMvI0uRR-2000x3000-jpg';\n function parseAssetId(ref) {\n var _ref$split = ref.split('-'),\n id = _ref$split[1],\n dimensionString = _ref$split[2],\n format = _ref$split[3];\n\n if (!id || !dimensionString || !format) {\n throw new Error(\"Malformed asset _ref '\" + ref + \"'. Expected an id like \\\"\" + example + \"\\\".\");\n }\n\n var _dimensionString$spli = dimensionString.split('x'),\n imgWidthStr = _dimensionString$spli[0],\n imgHeightStr = _dimensionString$spli[1];\n\n var width = +imgWidthStr;\n var height = +imgHeightStr;\n var isValidAssetId = isFinite(width) && isFinite(height);\n\n if (!isValidAssetId) {\n throw new Error(\"Malformed asset _ref '\" + ref + \"'. Expected an id like \\\"\" + example + \"\\\".\");\n }\n\n return {\n id: id,\n width: width,\n height: height,\n format: format\n };\n }\n\n var isRef = function isRef(src) {\n var source = src;\n return source ? typeof source._ref === 'string' : false;\n };\n\n var isAsset = function isAsset(src) {\n var source = src;\n return source ? typeof source._id === 'string' : false;\n };\n\n var isAssetStub = function isAssetStub(src) {\n var source = src;\n return source && source.asset ? typeof source.asset.url === 'string' : false;\n };\n\n function parseSource(source) {\n if (!source) {\n return null;\n }\n\n var image;\n\n if (typeof source === 'string' && isUrl(source)) {\n image = {\n asset: {\n _ref: urlToId(source)\n }\n };\n } else if (typeof source === 'string') {\n image = {\n asset: {\n _ref: source\n }\n };\n } else if (isRef(source)) {\n image = {\n asset: source\n };\n } else if (isAsset(source)) {\n image = {\n asset: {\n _ref: source._id || ''\n }\n };\n } else if (isAssetStub(source)) {\n image = {\n asset: {\n _ref: urlToId(source.asset.url)\n }\n };\n } else if (typeof source.asset === 'object') {\n image = source;\n } else {\n return null;\n }\n\n var img = source;\n\n if (img.crop) {\n image.crop = img.crop;\n }\n\n if (img.hotspot) {\n image.hotspot = img.hotspot;\n }\n\n return applyDefaults(image);\n }\n\n function isUrl(url) {\n return /^https?:\\/\\//.test(\"\" + url);\n }\n\n function urlToId(url) {\n var parts = url.split('/').slice(-1);\n return (\"image-\" + parts[0]).replace(/\\.([a-z]+)$/, '-$1');\n }\n\n function applyDefaults(image) {\n if (image.crop && image.hotspot) {\n return image;\n }\n\n var result = _extends({}, image);\n\n if (!result.crop) {\n result.crop = {\n left: 0,\n top: 0,\n bottom: 0,\n right: 0\n };\n }\n\n if (!result.hotspot) {\n result.hotspot = {\n x: 0.5,\n y: 0.5,\n height: 1.0,\n width: 1.0\n };\n }\n\n return result;\n }\n\n var SPEC_NAME_TO_URL_NAME_MAPPINGS = [['width', 'w'], ['height', 'h'], ['format', 'fm'], ['download', 'dl'], ['blur', 'blur'], ['sharpen', 'sharp'], ['invert', 'invert'], ['orientation', 'or'], ['minHeight', 'min-h'], ['maxHeight', 'max-h'], ['minWidth', 'min-w'], ['maxWidth', 'max-w'], ['quality', 'q'], ['fit', 'fit'], ['crop', 'crop'], ['saturation', 'sat'], ['auto', 'auto'], ['dpr', 'dpr']];\n function urlForImage(options) {\n var spec = _extends({}, options || {});\n\n var source = spec.source;\n delete spec.source;\n var image = parseSource(source);\n\n if (!image) {\n return null;\n }\n\n var id = image.asset._ref || image.asset._id || '';\n var asset = parseAssetId(id);\n var cropLeft = Math.round(image.crop.left * asset.width);\n var cropTop = Math.round(image.crop.top * asset.height);\n var crop = {\n left: cropLeft,\n top: cropTop,\n width: Math.round(asset.width - image.crop.right * asset.width - cropLeft),\n height: Math.round(asset.height - image.crop.bottom * asset.height - cropTop)\n };\n var hotSpotVerticalRadius = image.hotspot.height * asset.height / 2;\n var hotSpotHorizontalRadius = image.hotspot.width * asset.width / 2;\n var hotSpotCenterX = image.hotspot.x * asset.width;\n var hotSpotCenterY = image.hotspot.y * asset.height;\n var hotspot = {\n left: hotSpotCenterX - hotSpotHorizontalRadius,\n top: hotSpotCenterY - hotSpotVerticalRadius,\n right: hotSpotCenterX + hotSpotHorizontalRadius,\n bottom: hotSpotCenterY + hotSpotVerticalRadius\n };\n\n if (!(spec.rect || spec.focalPoint || spec.ignoreImageParams || spec.crop)) {\n spec = _extends(_extends({}, spec), fit({\n crop: crop,\n hotspot: hotspot\n }, spec));\n }\n\n return specToImageUrl(_extends(_extends({}, spec), {}, {\n asset: asset\n }));\n }\n\n function specToImageUrl(spec) {\n var cdnUrl = spec.baseUrl || 'https://cdn.sanity.io';\n var filename = spec.asset.id + \"-\" + spec.asset.width + \"x\" + spec.asset.height + \".\" + spec.asset.format;\n var baseUrl = cdnUrl + \"/images/\" + spec.projectId + \"/\" + spec.dataset + \"/\" + filename;\n var params = [];\n\n if (spec.rect) {\n var _spec$rect = spec.rect,\n left = _spec$rect.left,\n top = _spec$rect.top,\n width = _spec$rect.width,\n height = _spec$rect.height;\n var isEffectiveCrop = left !== 0 || top !== 0 || height !== spec.asset.height || width !== spec.asset.width;\n\n if (isEffectiveCrop) {\n params.push(\"rect=\" + left + \",\" + top + \",\" + width + \",\" + height);\n }\n }\n\n if (spec.bg) {\n params.push(\"bg=\" + spec.bg);\n }\n\n if (spec.focalPoint) {\n params.push(\"fp-x=\" + spec.focalPoint.x);\n params.push(\"fp-y=\" + spec.focalPoint.y);\n }\n\n var flip = [spec.flipHorizontal && 'h', spec.flipVertical && 'v'].filter(Boolean).join('');\n\n if (flip) {\n params.push(\"flip=\" + flip);\n }\n\n SPEC_NAME_TO_URL_NAME_MAPPINGS.forEach(function (mapping) {\n var specName = mapping[0],\n param = mapping[1];\n\n if (typeof spec[specName] !== 'undefined') {\n params.push(param + \"=\" + encodeURIComponent(spec[specName]));\n } else if (typeof spec[param] !== 'undefined') {\n params.push(param + \"=\" + encodeURIComponent(spec[param]));\n }\n });\n\n if (params.length === 0) {\n return baseUrl;\n }\n\n return baseUrl + \"?\" + params.join('&');\n }\n\n function fit(source, spec) {\n var cropRect;\n var imgWidth = spec.width;\n var imgHeight = spec.height;\n\n if (!(imgWidth && imgHeight)) {\n return {\n width: imgWidth,\n height: imgHeight,\n rect: source.crop\n };\n }\n\n var crop = source.crop;\n var hotspot = source.hotspot;\n var desiredAspectRatio = imgWidth / imgHeight;\n var cropAspectRatio = crop.width / crop.height;\n\n if (cropAspectRatio > desiredAspectRatio) {\n var height = crop.height;\n var width = height * desiredAspectRatio;\n var top = crop.top;\n var hotspotXCenter = (hotspot.right - hotspot.left) / 2 + hotspot.left;\n var left = hotspotXCenter - width / 2;\n\n if (left < crop.left) {\n left = crop.left;\n } else if (left + width > crop.left + crop.width) {\n left = crop.left + crop.width - width;\n }\n\n cropRect = {\n left: Math.round(left),\n top: Math.round(top),\n width: Math.round(width),\n height: Math.round(height)\n };\n } else {\n var _width = crop.width;\n\n var _height = _width / desiredAspectRatio;\n\n var _left = crop.left;\n var hotspotYCenter = (hotspot.bottom - hotspot.top) / 2 + hotspot.top;\n\n var _top = hotspotYCenter - _height / 2;\n\n if (_top < crop.top) {\n _top = crop.top;\n } else if (_top + _height > crop.top + crop.height) {\n _top = crop.top + crop.height - _height;\n }\n\n cropRect = {\n left: Math.max(0, Math.floor(_left)),\n top: Math.max(0, Math.floor(_top)),\n width: Math.round(_width),\n height: Math.round(_height)\n };\n }\n\n return {\n width: imgWidth,\n height: imgHeight,\n rect: cropRect\n };\n }\n\n var validFits = ['clip', 'crop', 'fill', 'fillmax', 'max', 'scale', 'min'];\n var validCrops = ['top', 'bottom', 'left', 'right', 'center', 'focalpoint', 'entropy'];\n var validAutoModes = ['format'];\n\n function isSanityClient(client) {\n return client ? typeof client.clientConfig === 'object' : false;\n }\n\n function rewriteSpecName(key) {\n var specs = SPEC_NAME_TO_URL_NAME_MAPPINGS;\n\n for (var _iterator = _createForOfIteratorHelperLoose(specs), _step; !(_step = _iterator()).done;) {\n var entry = _step.value;\n var specName = entry[0],\n param = entry[1];\n\n if (key === specName || key === param) {\n return specName;\n }\n }\n\n return key;\n }\n\n function urlBuilder(options) {\n var client = options;\n\n if (isSanityClient(client)) {\n var _client$clientConfig = client.clientConfig,\n apiUrl = _client$clientConfig.apiHost,\n projectId = _client$clientConfig.projectId,\n dataset = _client$clientConfig.dataset;\n var apiHost = apiUrl || 'https://api.sanity.io';\n return new ImageUrlBuilder(null, {\n baseUrl: apiHost.replace(/^https:\\/\\/api\\./, 'https://cdn.'),\n projectId: projectId,\n dataset: dataset\n });\n }\n\n return new ImageUrlBuilder(null, options);\n }\n var ImageUrlBuilder = /*#__PURE__*/function () {\n function ImageUrlBuilder(parent, options) {\n this.options = parent ? _extends(_extends({}, parent.options || {}), options || {}) : _extends({}, options || {});\n }\n\n var _proto = ImageUrlBuilder.prototype;\n\n _proto.withOptions = function withOptions(options) {\n var baseUrl = options.baseUrl || this.options.baseUrl;\n var newOptions = {\n baseUrl: baseUrl\n };\n\n for (var key in options) {\n if (options.hasOwnProperty(key)) {\n var specKey = rewriteSpecName(key);\n newOptions[specKey] = options[key];\n }\n }\n\n return new ImageUrlBuilder(this, _extends({\n baseUrl: baseUrl\n }, newOptions));\n };\n\n _proto.image = function image(source) {\n return this.withOptions({\n source: source\n });\n };\n\n _proto.dataset = function dataset(_dataset) {\n return this.withOptions({\n dataset: _dataset\n });\n };\n\n _proto.projectId = function projectId(_projectId) {\n return this.withOptions({\n projectId: _projectId\n });\n };\n\n _proto.bg = function bg(_bg) {\n return this.withOptions({\n bg: _bg\n });\n };\n\n _proto.dpr = function dpr(_dpr) {\n return this.withOptions({\n dpr: _dpr\n });\n };\n\n _proto.width = function width(_width) {\n return this.withOptions({\n width: _width\n });\n };\n\n _proto.height = function height(_height) {\n return this.withOptions({\n height: _height\n });\n };\n\n _proto.focalPoint = function focalPoint(x, y) {\n return this.withOptions({\n focalPoint: {\n x: x,\n y: y\n }\n });\n };\n\n _proto.maxWidth = function maxWidth(_maxWidth) {\n return this.withOptions({\n maxWidth: _maxWidth\n });\n };\n\n _proto.minWidth = function minWidth(_minWidth) {\n return this.withOptions({\n minWidth: _minWidth\n });\n };\n\n _proto.maxHeight = function maxHeight(_maxHeight) {\n return this.withOptions({\n maxHeight: _maxHeight\n });\n };\n\n _proto.minHeight = function minHeight(_minHeight) {\n return this.withOptions({\n minHeight: _minHeight\n });\n };\n\n _proto.size = function size(width, height) {\n return this.withOptions({\n width: width,\n height: height\n });\n };\n\n _proto.blur = function blur(_blur) {\n return this.withOptions({\n blur: _blur\n });\n };\n\n _proto.sharpen = function sharpen(_sharpen) {\n return this.withOptions({\n sharpen: _sharpen\n });\n };\n\n _proto.rect = function rect(left, top, width, height) {\n return this.withOptions({\n rect: {\n left: left,\n top: top,\n width: width,\n height: height\n }\n });\n };\n\n _proto.format = function format(_format) {\n return this.withOptions({\n format: _format\n });\n };\n\n _proto.invert = function invert(_invert) {\n return this.withOptions({\n invert: _invert\n });\n };\n\n _proto.orientation = function orientation(_orientation) {\n return this.withOptions({\n orientation: _orientation\n });\n };\n\n _proto.quality = function quality(_quality) {\n return this.withOptions({\n quality: _quality\n });\n };\n\n _proto.forceDownload = function forceDownload(download) {\n return this.withOptions({\n download: download\n });\n };\n\n _proto.flipHorizontal = function flipHorizontal() {\n return this.withOptions({\n flipHorizontal: true\n });\n };\n\n _proto.flipVertical = function flipVertical() {\n return this.withOptions({\n flipVertical: true\n });\n };\n\n _proto.ignoreImageParams = function ignoreImageParams() {\n return this.withOptions({\n ignoreImageParams: true\n });\n };\n\n _proto.fit = function fit(value) {\n if (validFits.indexOf(value) === -1) {\n throw new Error(\"Invalid fit mode \\\"\" + value + \"\\\"\");\n }\n\n return this.withOptions({\n fit: value\n });\n };\n\n _proto.crop = function crop(value) {\n if (validCrops.indexOf(value) === -1) {\n throw new Error(\"Invalid crop mode \\\"\" + value + \"\\\"\");\n }\n\n return this.withOptions({\n crop: value\n });\n };\n\n _proto.saturation = function saturation(_saturation) {\n return this.withOptions({\n saturation: _saturation\n });\n };\n\n _proto.auto = function auto(value) {\n if (validAutoModes.indexOf(value) === -1) {\n throw new Error(\"Invalid auto mode \\\"\" + value + \"\\\"\");\n }\n\n return this.withOptions({\n auto: value\n });\n };\n\n _proto.url = function url() {\n return urlForImage(this.options);\n };\n\n _proto.toString = function toString() {\n return this.url();\n };\n\n return ImageUrlBuilder;\n }();\n\n return urlBuilder;\n\n})));\n//# sourceMappingURL=image-url.umd.js.map\n","import { urlFor } from 'api/cms';\nimport { useSiteSettings } from 'hooks/use-siteSettings';\nimport Head from 'next/head';\nimport PropTypes from 'prop-types';\nimport React, { FC } from 'react';\nimport { ImageBase } from 'types/sanity';\n\ninterface Props {\n title: string;\n description?: string;\n image?: ImageBase;\n}\n\nconst SEO: FC = ({ title, description, image }) => {\n const { siteSettings } = useSiteSettings();\n\n const ogImage = image || siteSettings.image;\n const ogImageUrl = ogImage && urlFor(ogImage).width(2048).height(1170).url();\n const twitterCardImageUrl =\n ogImage && urlFor(ogImage).width(1200).height(628).url();\n\n let pageTitle: string;\n if (title === siteSettings.title) {\n pageTitle = title;\n } else {\n pageTitle = `${title} | ${siteSettings.title}`;\n }\n\n const pageDescription = description ?? siteSettings.description;\n\n return (\n \n {pageTitle}\n \n