tethysfaceid
Version:
1 lines • 14.2 kB
JSON
{"ast":null,"code":"\"use strict\";\n\nvar _slicedToArray = require(\"/Users/dhrumil1/Documents/Tethy/online-verification/node_modules/@babel/runtime/helpers/slicedToArray\");\n\nvar _toConsumableArray = require(\"/Users/dhrumil1/Documents/Tethy/online-verification/node_modules/@babel/runtime/helpers/toConsumableArray\");\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports[\"default\"] = Image;\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/objectWithoutPropertiesLoose\"));\n\nvar _extends2 = _interopRequireDefault(require(\"@babel/runtime/helpers/extends\"));\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _toBase = require(\"../next-server/lib/to-base-64\");\n\nvar _imageConfig = require(\"../next-server/server/image-config\");\n\nvar _useIntersection = require(\"./use-intersection\");\n\nif (false) {\n ;\n global.__NEXT_IMAGE_IMPORTED = true;\n}\n\nvar VALID_LOADING_VALUES = ['lazy', 'eager', undefined];\nvar loaders = new Map([['imgix', imgixLoader], ['cloudinary', cloudinaryLoader], ['akamai', akamaiLoader], ['default', defaultLoader]]);\nvar VALID_LAYOUT_VALUES = ['fill', 'fixed', 'intrinsic', 'responsive', undefined];\n\nvar _ref2 = process.env.__NEXT_IMAGE_OPTS || _imageConfig.imageConfigDefault,\n configDeviceSizes = _ref2.deviceSizes,\n configImageSizes = _ref2.imageSizes,\n configLoader = _ref2.loader,\n configPath = _ref2.path,\n configDomains = _ref2.domains; // sort smallest to largest\n\n\nvar allSizes = [].concat(_toConsumableArray(configDeviceSizes), _toConsumableArray(configImageSizes));\nconfigDeviceSizes.sort(function (a, b) {\n return a - b;\n});\nallSizes.sort(function (a, b) {\n return a - b;\n});\n\nfunction getWidths(width, layout) {\n if (typeof width !== 'number' || layout === 'fill' || layout === 'responsive') {\n return {\n widths: configDeviceSizes,\n kind: 'w'\n };\n }\n\n var widths = _toConsumableArray(new Set([width, width * 2, width * 3].map(function (w) {\n return allSizes.find(function (p) {\n return p >= w;\n }) || allSizes[allSizes.length - 1];\n })));\n\n return {\n widths: widths,\n kind: 'x'\n };\n}\n\nfunction callLoader(loaderProps) {\n var load = loaders.get(configLoader);\n\n if (load) {\n return load((0, _extends2[\"default\"])({\n root: configPath\n }, loaderProps));\n }\n\n throw new Error(\"Unknown \\\"loader\\\" found in \\\"next.config.js\\\". Expected: \".concat(_imageConfig.VALID_LOADERS.join(', '), \". Received: \").concat(configLoader));\n}\n\nfunction generateImgAttrs(_ref3) {\n var src = _ref3.src,\n unoptimized = _ref3.unoptimized,\n layout = _ref3.layout,\n width = _ref3.width,\n quality = _ref3.quality,\n sizes = _ref3.sizes;\n\n if (unoptimized) {\n return {\n src: src\n };\n }\n\n var _getWidths = getWidths(width, layout),\n widths = _getWidths.widths,\n kind = _getWidths.kind;\n\n var last = widths.length - 1;\n var srcSet = widths.map(function (w, i) {\n return \"\".concat(callLoader({\n src: src,\n quality: quality,\n width: w\n }), \" \").concat(kind === 'w' ? w : i + 1).concat(kind);\n }).join(', ');\n\n if (!sizes && kind === 'w') {\n sizes = widths.map(function (w, i) {\n return i === last ? \"\".concat(w, \"px\") : \"(max-width: \".concat(w, \"px) \").concat(w, \"px\");\n }).join(', ');\n }\n\n src = callLoader({\n src: src,\n quality: quality,\n width: widths[last]\n });\n return {\n src: src,\n sizes: sizes,\n srcSet: srcSet\n };\n}\n\nfunction getInt(x) {\n if (typeof x === 'number') {\n return x;\n }\n\n if (typeof x === 'string') {\n return parseInt(x, 10);\n }\n\n return undefined;\n}\n\nfunction Image(_ref) {\n var src = _ref.src,\n sizes = _ref.sizes,\n _ref$unoptimized = _ref.unoptimized,\n unoptimized = _ref$unoptimized === void 0 ? false : _ref$unoptimized,\n _ref$priority = _ref.priority,\n priority = _ref$priority === void 0 ? false : _ref$priority,\n loading = _ref.loading,\n className = _ref.className,\n quality = _ref.quality,\n width = _ref.width,\n height = _ref.height,\n objectFit = _ref.objectFit,\n objectPosition = _ref.objectPosition,\n all = (0, _objectWithoutPropertiesLoose2[\"default\"])(_ref, [\"src\", \"sizes\", \"unoptimized\", \"priority\", \"loading\", \"className\", \"quality\", \"width\", \"height\", \"objectFit\", \"objectPosition\"]);\n var rest = all;\n var layout = sizes ? 'responsive' : 'intrinsic';\n var unsized = false;\n\n if ('unsized' in rest) {\n unsized = Boolean(rest.unsized); // Remove property so it's not spread into image:\n\n delete rest['unsized'];\n } else if ('layout' in rest) {\n // Override default layout if the user specified one:\n if (rest.layout) layout = rest.layout; // Remove property so it's not spread into image:\n\n delete rest['layout'];\n }\n\n if (false) {\n if (!src) {\n throw new Error(\"Image is missing required \\\"src\\\" property. Make sure you pass \\\"src\\\" in props to the `next/image` component. Received: \".concat(JSON.stringify({\n width: width,\n height: height,\n quality: quality\n })));\n }\n\n if (!VALID_LAYOUT_VALUES.includes(layout)) {\n throw new Error(\"Image with src \\\"\".concat(src, \"\\\" has invalid \\\"layout\\\" property. Provided \\\"\").concat(layout, \"\\\" should be one of \").concat(VALID_LAYOUT_VALUES.map(String).join(','), \".\"));\n }\n\n if (!VALID_LOADING_VALUES.includes(loading)) {\n throw new Error(\"Image with src \\\"\".concat(src, \"\\\" has invalid \\\"loading\\\" property. Provided \\\"\").concat(loading, \"\\\" should be one of \").concat(VALID_LOADING_VALUES.map(String).join(','), \".\"));\n }\n\n if (priority && loading === 'lazy') {\n throw new Error(\"Image with src \\\"\".concat(src, \"\\\" has both \\\"priority\\\" and \\\"loading='lazy'\\\" properties. Only one should be used.\"));\n }\n\n if (unsized) {\n throw new Error(\"Image with src \\\"\".concat(src, \"\\\" has deprecated \\\"unsized\\\" property, which was removed in favor of the \\\"layout='fill'\\\" property\"));\n }\n }\n\n var isLazy = !priority && (loading === 'lazy' || typeof loading === 'undefined');\n\n if (src && src.startsWith('data:')) {\n // https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs\n unoptimized = true;\n isLazy = false;\n }\n\n var _ref4 = (0, _useIntersection.useIntersection)({\n rootMargin: '200px',\n disabled: !isLazy\n }),\n _ref5 = _slicedToArray(_ref4, 2),\n setRef = _ref5[0],\n isIntersected = _ref5[1];\n\n var isVisible = !isLazy || isIntersected;\n var widthInt = getInt(width);\n var heightInt = getInt(height);\n var qualityInt = getInt(quality);\n var wrapperStyle;\n var sizerStyle;\n var sizerSvg;\n var imgStyle = {\n visibility: isVisible ? 'visible' : 'hidden',\n position: 'absolute',\n top: 0,\n left: 0,\n bottom: 0,\n right: 0,\n boxSizing: 'border-box',\n padding: 0,\n border: 'none',\n margin: 'auto',\n display: 'block',\n width: 0,\n height: 0,\n minWidth: '100%',\n maxWidth: '100%',\n minHeight: '100%',\n maxHeight: '100%',\n objectFit: objectFit,\n objectPosition: objectPosition\n };\n\n if (typeof widthInt !== 'undefined' && typeof heightInt !== 'undefined' && layout !== 'fill') {\n // <Image src=\"i.png\" width=\"100\" height=\"100\" />\n var quotient = heightInt / widthInt;\n var paddingTop = isNaN(quotient) ? '100%' : \"\".concat(quotient * 100, \"%\");\n\n if (layout === 'responsive') {\n // <Image src=\"i.png\" width=\"100\" height=\"100\" layout=\"responsive\" />\n wrapperStyle = {\n display: 'block',\n overflow: 'hidden',\n position: 'relative',\n boxSizing: 'border-box',\n margin: 0\n };\n sizerStyle = {\n display: 'block',\n boxSizing: 'border-box',\n paddingTop: paddingTop\n };\n } else if (layout === 'intrinsic') {\n // <Image src=\"i.png\" width=\"100\" height=\"100\" layout=\"intrinsic\" />\n wrapperStyle = {\n display: 'inline-block',\n maxWidth: '100%',\n overflow: 'hidden',\n position: 'relative',\n boxSizing: 'border-box',\n margin: 0\n };\n sizerStyle = {\n boxSizing: 'border-box',\n display: 'block',\n maxWidth: '100%'\n };\n sizerSvg = \"<svg width=\\\"\".concat(widthInt, \"\\\" height=\\\"\").concat(heightInt, \"\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\"/>\");\n } else if (layout === 'fixed') {\n // <Image src=\"i.png\" width=\"100\" height=\"100\" layout=\"fixed\" />\n wrapperStyle = {\n overflow: 'hidden',\n boxSizing: 'border-box',\n display: 'inline-block',\n position: 'relative',\n width: widthInt,\n height: heightInt\n };\n }\n } else if (typeof widthInt === 'undefined' && typeof heightInt === 'undefined' && layout === 'fill') {\n // <Image src=\"i.png\" layout=\"fill\" />\n wrapperStyle = {\n display: 'block',\n overflow: 'hidden',\n position: 'absolute',\n top: 0,\n left: 0,\n bottom: 0,\n right: 0,\n boxSizing: 'border-box',\n margin: 0\n };\n } else {\n // <Image src=\"i.png\" />\n if (false) {\n throw new Error(\"Image with src \\\"\".concat(src, \"\\\" must use \\\"width\\\" and \\\"height\\\" properties or \\\"layout='fill'\\\" property.\"));\n }\n }\n\n var imgAttributes = {\n src: 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7'\n };\n\n if (isVisible) {\n imgAttributes = generateImgAttrs({\n src: src,\n unoptimized: unoptimized,\n layout: layout,\n width: widthInt,\n quality: qualityInt,\n sizes: sizes\n });\n }\n\n if (unsized) {\n wrapperStyle = undefined;\n sizerStyle = undefined;\n imgStyle = undefined;\n }\n\n return /*#__PURE__*/_react[\"default\"].createElement(\"div\", {\n style: wrapperStyle\n }, sizerStyle ? /*#__PURE__*/_react[\"default\"].createElement(\"div\", {\n style: sizerStyle\n }, sizerSvg ? /*#__PURE__*/_react[\"default\"].createElement(\"img\", {\n style: {\n maxWidth: '100%',\n display: 'block'\n },\n alt: \"\",\n \"aria-hidden\": true,\n role: \"presentation\",\n src: \"data:image/svg+xml;base64,\".concat((0, _toBase.toBase64)(sizerSvg))\n }) : null) : null, /*#__PURE__*/_react[\"default\"].createElement(\"img\", Object.assign({}, rest, imgAttributes, {\n decoding: \"async\",\n className: className,\n ref: setRef,\n style: imgStyle\n })));\n} //BUILT IN LOADERS\n\n\nfunction normalizeSrc(src) {\n return src[0] === '/' ? src.slice(1) : src;\n}\n\nfunction imgixLoader(_ref6) {\n var root = _ref6.root,\n src = _ref6.src,\n width = _ref6.width,\n quality = _ref6.quality;\n // Demo: https://static.imgix.net/daisy.png?format=auto&fit=max&w=300\n var params = ['auto=format', 'fit=max', 'w=' + width];\n var paramsString = '';\n\n if (quality) {\n params.push('q=' + quality);\n }\n\n if (params.length) {\n paramsString = '?' + params.join('&');\n }\n\n return \"\".concat(root).concat(normalizeSrc(src)).concat(paramsString);\n}\n\nfunction akamaiLoader(_ref7) {\n var root = _ref7.root,\n src = _ref7.src,\n width = _ref7.width;\n return \"\".concat(root).concat(normalizeSrc(src), \"?imwidth=\").concat(width);\n}\n\nfunction cloudinaryLoader(_ref8) {\n var root = _ref8.root,\n src = _ref8.src,\n width = _ref8.width,\n quality = _ref8.quality;\n // Demo: https://res.cloudinary.com/demo/image/upload/w_300,c_limit/turtles.jpg\n var params = ['f_auto', 'c_limit', 'w_' + width];\n var paramsString = '';\n\n if (quality) {\n params.push('q_' + quality);\n }\n\n if (params.length) {\n paramsString = params.join(',') + '/';\n }\n\n return \"\".concat(root).concat(paramsString).concat(normalizeSrc(src));\n}\n\nfunction defaultLoader(_ref9) {\n var root = _ref9.root,\n src = _ref9.src,\n width = _ref9.width,\n quality = _ref9.quality;\n\n if (false) {\n var missingValues = []; // these should always be provided but make sure they are\n\n if (!src) missingValues.push('src');\n if (!width) missingValues.push('width');\n\n if (missingValues.length > 0) {\n throw new Error(\"Next Image Optimization requires \".concat(missingValues.join(', '), \" to be provided. Make sure you pass them as props to the `next/image` component. Received: \").concat(JSON.stringify({\n src: src,\n width: width,\n quality: quality\n })));\n }\n\n if (src.startsWith('//')) {\n throw new Error(\"Failed to parse src \\\"\".concat(src, \"\\\" on `next/image`, protocol-relative URL (//) must be changed to an absolute URL (http:// or https://)\"));\n }\n\n if (!src.startsWith('/') && configDomains) {\n var parsedSrc;\n\n try {\n parsedSrc = new URL(src);\n } catch (err) {\n console.error(err);\n throw new Error(\"Failed to parse src \\\"\".concat(src, \"\\\" on `next/image`, if using relative image it must start with a leading slash \\\"/\\\" or be an absolute URL (http:// or https://)\"));\n }\n\n if (!configDomains.includes(parsedSrc.hostname)) {\n throw new Error(\"Invalid src prop (\".concat(src, \") on `next/image`, hostname \\\"\").concat(parsedSrc.hostname, \"\\\" is not configured under images in your `next.config.js`\\n\") + \"See more info: https://err.sh/next.js/next-image-unconfigured-host\");\n }\n }\n }\n\n return \"\".concat(root, \"?url=\").concat(encodeURIComponent(src), \"&w=\").concat(width, \"&q=\").concat(quality || 75);\n}","map":null,"metadata":{},"sourceType":"script"}