-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcommons-6d9b15cf9da322b42e56.js.map
1 lines (1 loc) · 324 KB
/
commons-6d9b15cf9da322b42e56.js.map
1
{"version":3,"file":"commons-6d9b15cf9da322b42e56.js","mappings":"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","sources":["webpack://jkube-website/./node_modules/camelcase/index.js","webpack://jkube-website/../src/image-utils.ts","webpack://jkube-website/../src/components/hooks.ts","webpack://jkube-website/../src/components/layout-wrapper.tsx","webpack://jkube-website/../src/components/picture.tsx","webpack://jkube-website/../src/components/placeholder.tsx","webpack://jkube-website/../src/components/main-image.tsx","webpack://jkube-website/../src/components/gatsby-image.server.tsx","webpack://jkube-website/../src/components/gatsby-image.browser.tsx","webpack://jkube-website/../src/components/static-image.server.tsx","webpack://jkube-website/../src/components/static-image.tsx","webpack://jkube-website/./node_modules/clsx/dist/clsx.m.js","webpack://jkube-website/./node_modules/prism-react-renderer/dist/index.mjs","webpack://jkube-website/./src/components/code.jsx","webpack://jkube-website/./src/assets/jkube-logo-horizontal-white.svg","webpack://jkube-website/./src/components/footer.jsx","webpack://jkube-website/./src/components/getting-started-tab.jsx","webpack://jkube-website/./src/assets/EF_WHT-OR_png.png","webpack://jkube-website/./src/components/header.jsx","webpack://jkube-website/./src/components/hero.jsx","webpack://jkube-website/./src/components/icons/gradle.jsx","webpack://jkube-website/./src/components/icons/kubernetes.jsx","webpack://jkube-website/./src/components/icons/maven.jsx","webpack://jkube-website/./src/components/icons/open-shift.jsx","webpack://jkube-website/./src/components/main-layout.jsx","webpack://jkube-website/./src/components/quickstarts/quickstart-card.jsx","webpack://jkube-website/./src/components/quickstarts/quickstart-list.jsx","webpack://jkube-website/./src/components/seo.jsx","webpack://jkube-website/./src/components/tabs.jsx","webpack://jkube-website/./src/components/tag.jsx","webpack://jkube-website/./src/components/youtube.jsx","webpack://jkube-website/./src/i18n.js"],"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","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<ImageFormat>\n placeholder?: \"tracedSVG\" | \"dominantColor\" | \"blurred\" | \"none\"\n tracedSVGOptions?: Record<string, unknown>\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<string, unknown>\n pngOptions?: Record<string, unknown>\n webpOptions?: Record<string, unknown>\n avifOptions?: Record<string, unknown>\n blurredOptions?: { width?: number; toFormat?: ImageFormat }\n breakpoints?: Array<number>\n outputPixelDensities?: Array<number>\n backgroundColor?: string\n}\n\nexport interface IImageSizeArgs {\n width?: number\n height?: number\n layout?: Layout\n filename: string\n outputPixelDensities?: Array<number>\n breakpoints?: Array<number>\n fit?: Fit\n reporter?: IReporter\n sourceMetadata: { width: number; height: number }\n}\n\nexport interface IImageSizes {\n sizes: Array<number>\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<string, unknown>\n ) => IImage\n layout?: Layout\n formats?: Array<ImageFormat>\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<string, unknown>\n breakpoints?: Array<number>\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<IImage>): 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<ImageFormat>(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<IGatsbyImageData> = {\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<number>): Array<number> =>\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 = never> = T & {\n gatsbyImageData: IGatsbyImageData\n}\nexport type IGatsbyImageParent<T = never> = T & {\n gatsbyImage: IGatsbyImageData\n}\nexport type FileNode = Partial<Node> & {\n childImageSharp?: IGatsbyImageDataParent<Partial<Node>>\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 = <T>(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n node: IGatsbyImageDataParent<T> | any\n): node is IGatsbyImageDataParent<T> => Boolean(node?.gatsbyImageData)\n\nconst isGatsbyImageParent = <T>(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n node: IGatsbyImageParent<T> | any\n): node is IGatsbyImageParent<T> => 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<HTMLAttributes<HTMLElement>, \"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<OptionsType> {\n width: number\n height: number\n baseUrl: string\n format: ImageFormat\n options: OptionsType\n}\nexport interface IGetImageDataArgs<OptionsType = Record<string, unknown>> {\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<OptionsType>) => 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<ImageFormat>\n\n breakpoints?: Array<number>\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<OptionsType>({\n baseUrl,\n urlBuilder,\n sourceWidth,\n sourceHeight,\n pluginName = `getImageData`,\n formats = [`auto`],\n breakpoints,\n options,\n ...props\n}: IGetImageDataArgs<OptionsType>): 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<MainImageProps> {\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<HTMLImageElement> &\n Pick<PlaceholderProps, \"sources\" | \"fallback\"> & {\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<IArtDirectedImage>\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 <script\n type=\"module\"\n dangerouslySetInnerHTML={{\n __html: terserMacro`\nconst hasNativeLazyLoadSupport = typeof HTMLImageElement !== \"undefined\" && \"loading\" in HTMLImageElement.prototype;\nif (hasNativeLazyLoadSupport) {\n const gatsbyImages = document.querySelectorAll('img[data-main-image]');\n for (let mainImage of gatsbyImages) {\n if (mainImage.dataset.src) {\n mainImage.setAttribute('src', mainImage.dataset.src)\n mainImage.removeAttribute('data-src')\n }\n if (mainImage.dataset.srcset) {\n mainImage.setAttribute('srcset', mainImage.dataset.srcset)\n mainImage.removeAttribute('data-srcset')\n }\n\n const sources = mainImage.parentNode.querySelectorAll('source[data-srcset]');\n for (let source of sources) {\n source.setAttribute('srcset', source.dataset.srcset)\n source.removeAttribute('data-srcset')\n }\n\n if (mainImage.complete) {\n mainImage.style.opacity = 1;\n\n // also hide the placeholder\n mainImage.parentNode.parentNode.querySelector('[data-placeholder-image]').style.opacity = 0;\n }\n }\n}\n`,\n }}\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 = `<div aria-hidden=\"true\" style=\"padding-top: ${\n (height / width) * 100\n }%;\"></div>`\n }\n\n if (layout === `constrained`) {\n sizer = `<div style=\"max-width: ${width}px; display: block;\"><img alt=\"\" role=\"presentation\" aria-hidden=\"true\" src=\"data:image/svg+xml;charset=utf-8,%3Csvg%20height='${height}'%20width='${width}'%20xmlns='http://www.w3.org/2000/svg'%20version='1.1'%3E%3C/svg%3E\" style=\"max-width: 100%; display: block; position: static;\"></div>`\n }\n\n return sizer\n}\n\nconst Sizer: FunctionComponent<ILayoutWrapperProps> = function Sizer({\n layout,\n width,\n height,\n}) {\n if (layout === `fullWidth`) {\n return (\n <div aria-hidden style={{ paddingTop: `${(height / width) * 100}%` }} />\n )\n }\n\n if (layout === `constrained`) {\n return (\n <div style={{ maxWidth: width, display: `block` }}>\n <img\n alt=\"\"\n role=\"presentation\"\n aria-hidden=\"true\"\n src={`data:image/svg+xml;charset=utf-8,%3Csvg%20height='${height}'%20width='${width}'%20xmlns='http://www.w3.org/2000/svg'%20version='1.1'%3E%3C/svg%3E`}\n style={{\n maxWidth: `100%`,\n display: `block`,\n position: `static`,\n }}\n />\n </div>\n )\n }\n\n return null\n}\n\nexport const LayoutWrapper: FunctionComponent<\n PropsWithChildren<ILayoutWrapperProps>\n> = function LayoutWrapper({ children, ...props }) {\n return (\n <Fragment>\n <Sizer {...props} />\n {children}\n\n {SERVER ? <NativeScriptLoading /> : null}\n </Fragment>\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<IResponsiveImageProps>\n\ntype ImageProps = ImgHTMLAttributes<HTMLImageElement> & {\n src: string\n alt: string\n shouldLoad: boolean\n}\n\nexport type PictureProps = ImgHTMLAttributes<HTMLImageElement> & {\n fallback?: FallbackProps\n sources?: Array<SourceProps>\n alt: string\n shouldLoad?: boolean\n}\n\nconst Image: FunctionComponent<ImageProps> = function Image({\n src,\n srcSet,\n loading,\n alt = ``,\n shouldLoad,\n ...props\n}) {\n return (\n <img\n {...props}\n decoding=\"async\"\n loading={loading}\n src={shouldLoad ? src : undefined}\n data-src={!shouldLoad ? src : undefined}\n srcSet={shouldLoad ? srcSet : undefined}\n data-srcset={!shouldLoad ? srcSet : undefined}\n alt={alt}\n />\n )\n}\n\nexport const Picture: React.FC<PictureProps> = function Picture({\n fallback,\n sources = [],\n shouldLoad = true,\n ...props\n}) {\n const sizes = props.sizes || fallback?.sizes\n const fallbackImage = (\n <Image {...props} {...fallback} sizes={sizes} shouldLoad={shouldLoad} />\n )\n\n if (!sources.length) {\n return fallbackImage\n }\n\n return (\n <picture>\n {sources.map(({ media, srcSet, type }) => (\n <source\n key={`${media}-${type}-${srcSet}`}\n type={type}\n media={media}\n srcSet={shouldLoad ? srcSet : undefined}\n data-srcset={!shouldLoad ? srcSet : undefined}\n sizes={sizes}\n />\n ))}\n {fallbackImage}\n </picture>\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<HTMLImageElement> & {\n fallback?: string\n sources?: Array<SourceProps>\n}\n\nexport const Placeholder: FunctionComponent<PlaceholderProps> =\n function Placeholder({ fallback, ...props }) {\n if (fallback) {\n return (\n <Picture\n {...props}\n fallback={{\n src: fallback,\n }}\n aria-hidden\n alt=\"\"\n />\n )\n } else {\n return <div {...props}></div>\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<PictureProps> = function MainImage(props) {\n return (\n <>\n <Picture {...props} />\n <noscript>\n <Picture {...props} shouldLoad={true} />\n </noscript>\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<GatsbyImageProps> =\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 <LayoutWrapper layout={layout} width={width} height={height}>\n <Placeholder\n {...getPlaceholderProps(\n placeholder,\n false,\n layout,\n width,\n height,\n placeholderBackgroundColor,\n objectFit,\n objectPosition\n )}\n />\n\n <MainImage\n data-gatsby-image-ssr=\"\"\n className={imgClassName}\n {...(props as Omit<\n MainImageProps,\n \"images\" | \"fallback\" | \"onError\" | \"onLoad\"\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 </LayoutWrapper>\n )\n }\n\nexport const altValidator: PropTypes.Validator<string> = (\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<GatsbyImageProps>\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<string>()\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<HTMLImageElement>,\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<HTMLImageElement>\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<MainImageProps, \"sources\" | \"fallback\">\n placeholder?: Pick<PlaceholderProps, \"sources\" | \"fallback\">\n}\n\nconst GatsbyImageHydrator: FC<GatsbyImageProps> = 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<HTMLElement>()\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<GatsbyImageProps> = 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<GatsbyImageProps, \"image\">,\n Omit<ISharpGatsbyImageArgs, \"backgroundColor\"> {\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<GatsbyImageProps>\n): React.FC<IStaticImageProps & IPrivateProps> {\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 <GatsbyImage image={imageData} {...props} />\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<IStaticImageProps & IPrivateProps> =\n _getStaticImage(GatsbyImageServer)\n\nconst checkDimensionProps: PropTypes.Validator<number> = (\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<IStaticImageProps & IPrivateProps> =\n _getStaticImage(GatsbyImageBrowser)\n\nStaticImage.displayName = `StaticImage`\nStaticImage.propTypes = propTypes\n\nexport { StaticImage }\n","function r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e))for(t=0;t<e.length;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=\" \"),n+=f);else for(t in e)e[t]&&(n&&(n+=\" \"),n+=t);return n}export function clsx(){for(var e,t,f=0,n=\"\";f<arguments.length;)(e=arguments[f++])&&(t=r(e))&&(n&&(n+=\" \"),n+=t);return n}export default clsx;","var __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\nvar __objRest = (source, exclude) => {\n var target = {};\n for (var prop in source)\n if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)\n target[prop] = source[prop];\n if (source != null && __getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(source)) {\n if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))\n target[prop] = source[prop];\n }\n return target;\n};\nvar __commonJS = (cb, mod) => function __require() {\n return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;\n};\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\n\n// ../../node_modules/.pnpm/prismjs@1.29.0_patch_hash=vrxx3pzkik6jpmgpayxfjunetu/node_modules/prismjs/prism.js\nvar require_prism = __commonJS({\n \"../../node_modules/.pnpm/prismjs@1.29.0_patch_hash=vrxx3pzkik6jpmgpayxfjunetu/node_modules/prismjs/prism.js\"(exports, module) {\n var Prism2 = function() {\n var lang = /(?:^|\\s)lang(?:uage)?-([\\w-]+)(?=\\s|$)/i;\n var uniqueId = 0;\n var plainTextGrammar = {};\n var _ = {\n /**\n * A namespace for utility methods.\n *\n * All function in this namespace that are not explicitly marked as _public_ are for __internal use only__ and may\n * change or disappear at any time.\n *\n * @namespace\n * @memberof Prism\n */\n util: {\n encode: function encode(tokens) {\n if (tokens instanceof Token) {\n return new Token(tokens.type, encode(tokens.content), tokens.alias);\n } else if (Array.isArray(tokens)) {\n return tokens.map(encode);\n } else {\n return tokens.replace(/&/g, \"&\").replace(/</g, \"<\").replace(/\\u00a0/g, \" \");\n }\n },\n /**\n * Returns the name of the type of the given value.\n *\n * @param {any} o\n * @returns {string}\n * @example\n * type(null) === 'Null'\n * type(undefined) === 'Undefined'\n * type(123) === 'Number'\n * type('foo') === 'String'\n * type(true) === 'Boolean'\n * type([1, 2]) === 'Array'\n * type({}) === 'Object'\n * type(String) === 'Function'\n * type(/abc+/) === 'RegExp'\n */\n type: function(o) {\n return Object.prototype.toString.call(o).slice(8, -1);\n },\n /**\n * Returns a unique number for the given object. Later calls will still return the same number.\n *\n * @param {Object} obj\n * @returns {number}\n */\n objId: function(obj) {\n if (!obj[\"__id\"]) {\n Object.defineProperty(obj, \"__id\", { value: ++uniqueId });\n }\n return obj[\"__id\"];\n },\n /**\n * Creates a deep clone of the given object.\n *\n * The main intended use of this function is to clone language definitions.\n *\n * @param {T} o\n * @param {Record<number, any>} [visited]\n * @returns {T}\n * @template T\n */\n clone: function deepClone(o, visited) {\n visited = visited || {};\n var clone;\n var id;\n switch (_.util.type(o)) {\n case \"Object\":\n id = _.util.objId(o);\n if (visited[id]) {\n return visited[id];\n }\n clone = /** @type {Record<string, any>} */\n {};\n visited[id] = clone;\n for (var key in o) {\n if (o.hasOwnProperty(key)) {\n clone[key] = deepClone(o[key], visited);\n }\n }\n return (\n /** @type {any} */\n clone\n );\n case \"Array\":\n id = _.util.objId(o);\n if (visited[id]) {\n return visited[id];\n }\n clone = [];\n visited[id] = clone;\n /** @type {Array} */\n /** @type {any} */\n o.forEach(function(v, i) {\n clone[i] = deepClone(v, visited);\n });\n return (\n /** @type {any} */\n clone\n );\n default:\n return o;\n }\n },\n /**\n * Returns the Prism language of the given element set by a `language-xxxx` or `lang-xxxx` class.\n *\n * If no language is set for the element or the element is `null` or `undefined`, `none` will be returned.\n *\n * @param {Element} element\n * @returns {string}\n */\n getLanguage: function(element) {\n while (element) {\n var m = lang.exec(element.className);\n if (m) {\n return m[1].toLowerCase();\n }\n element = element.parentElement;\n }\n return \"none\";\n },\n /**\n * Sets the Prism `language-xxxx` class of the given element.\n *\n * @param {Element} element\n * @param {string} language\n * @returns {void}\n */\n setLanguage: function(element, language) {\n element.className = element.className.replace(RegExp(lang, \"gi\"), \"\");\n element.classList.add(\"language-\" + language);\n },\n /**\n * Returns whether a given class is active for `element`.\n *\n * The class can be activated if `element` or one of its ancestors has the given class and it can be deactivated\n * if `element` or one of its ancestors has the negated version of the given class. The _negated version_ of the\n * given class is just the given class with a `no-` prefix.\n *\n * Whether the class is active is determined by the closest ancestor of `element` (where `element` itself is\n * closest ancestor) that has the given class or the negated version of it. If neither `element` nor any of its\n * ancestors have the given class or the negated version of it, then the default activation will be returned.\n *\n * In the paradoxical situation where the closest ancestor contains __both__ the given class and the negated\n * version of it, the class is considered active.\n *\n * @param {Element} element\n * @param {string} className\n * @param {boolean} [defaultActivation=false]\n * @returns {boolean}\n */\n isActive: function(element, className, defaultActivation) {\n var no = \"no-\" + className;\n while (element) {\n var classList = element.classList;\n if (classList.contains(className)) {\n return true;\n }\n if (classList.contains(no)) {\n return false;\n }\n element = element.parentElement;\n }\n return !!defaultActivation;\n }\n },\n /**\n * This namespace contains all currently loaded languages and the some helper functions to create and modify languages.\n *\n * @namespace\n * @memberof Prism\n * @public\n */\n languages: {\n /**\n * The grammar for plain, unformatted text.\n */\n plain: plainTextGrammar,\n plaintext: plainTextGrammar,\n text: plainTextGrammar,\n txt: plainTextGrammar,\n /**\n * Creates a deep copy of the language with the given id and appends the given tokens.\n *\n * If a token in `redef` also appears in the copied language, then the existing token in the copied language\n * will be overwritten at its original position.\n *\n * ## Best practices\n *\n * Since the position of overwriting tokens (token in `redef` that overwrite tokens in the copied language)\n * doesn't matter, they can technically be in any order. However, this can be confusing to others that trying to\n * understand the language definition because, normally, the order of tokens matters in Prism grammars.\n *\n * Therefore, it is encouraged to order overwriting tokens according to the positions of the overwritten tokens.\n * Furthermore, all non-overwriting tokens should be placed after the overwriting ones.\n *\n * @param {string} id The id of the language to extend. This has to be a key in `Prism.languages`.\n * @param {Grammar} redef The new tokens to append.\n * @returns {Grammar} The new language created.\n * @public\n * @example\n * Prism.languages['css-with-colors'] = Prism.languages.extend('css', {\n * // Prism.languages.css already has a 'comment' token, so this token will overwrite CSS' 'comment' token\n * // at its original position\n * 'comment': { ... },\n * // CSS doesn't have a 'color' token, so this token will be appended\n * 'color': /\\b(?:red|green|blue)\\b/\n * });\n */\n extend: function(id, redef) {\n var lang2 = _.util.clone(_.languages[id]);\n for (var key in redef) {\n lang2[key] = redef[key];\n }\n return lang2;\n },\n /**\n * Inserts tokens _before_ another token in a language definition or any other grammar.\n *\n * ## Usage\n *\n * This helper method makes it easy to modify existing languages. For example, the CSS language definition\n * not only defines CSS highlighting for CSS documents, but also needs to define highlighting for CSS embedded\n * in HTML through `<style>` elements. To do this, it needs to modify `Prism.languages.markup` and add the\n * appropriate tokens. However, `Prism.languages.markup` is a regular JavaScript object literal, so if you do\n * this:\n *\n * ```js\n * Prism.languages.markup.style = {\n * // token\n * };\n * ```\n *\n * then the `style` token will be added (and processed) at the end. `insertBefore` allows you to insert tokens\n * before existing tokens. For the CSS example above, you would use it like this:\n *\n * ```js\n * Prism.languages.insertBefore('markup', 'cdata', {\n * 'style': {\n * // token\n * }\n * });\n * ```\n *\n * ## Special cases\n *\n * If the grammars of `inside` and `insert` have tokens with the same name, the tokens in `inside`'s grammar\n * will be ignored.\n *\n * This behavior can be used to insert tokens after `before`:\n *\n * ```js\n * Prism.languages.insertBefore('markup', 'comment', {\n * 'comment': Prism.languages.markup.comment,\n * // tokens after 'comment'\n * });\n * ```\n *\n * ## Limitations\n *\n * The main problem `insertBefore` has to solve is iteration order. Since ES2015, the iteration order for object\n * properties is guaranteed to be the insertion order (except for integer keys) but some browsers behave\n * differently when keys are deleted and re-inserted. So `insertBefore` can't be implemented by temporarily\n * deleting properties which is necessary to insert at arbitrary positions.\n *\n * To solve this problem, `insertBefore` doesn't actually insert the given tokens into the target object.\n * Instead, it will create a new object and replace all references to the target object with the new one. This\n * can be done without temporarily deleting properties, so the iteration order is well-defined.\n *\n * However, only references that can be reached from `Prism.languages` or `insert` will be replaced. I.e. if\n * you hold the target object in a variable, then the value of the variable will not change.\n *\n * ```js\n * var oldMarkup = Prism.languages.markup;\n * var newMarkup = Prism.languages.insertBefore('markup', 'comment', { ... });\n *\n * assert(oldMarkup !== Prism.languages.markup);\n * assert(newMarkup === Prism.languages.markup);\n * ```\n *\n * @param {string} inside The property of `root` (e.g. a language id in `Prism.languages`) that contains the\n * object to be modified.\n * @param {string} before The key to insert before.\n * @param {Grammar} insert An object containing the key-value pairs to be inserted.\n * @param {Object<string, any>} [root] The object containing `inside`, i.e. the object that contains the\n * object to be modified.\n *\n * Defaults to `Prism.languages`.\n * @returns {Grammar} The new grammar object.\n * @public\n */\n insertBefore: function(inside, before, insert, root) {\n root = root || /** @type {any} */\n _.languages;\n var grammar = root[inside];\n var ret = {};\n for (var token in grammar) {\n if (grammar.hasOwnProperty(token)) {\n if (token == before) {\n for (var newToken in insert) {\n if (insert.hasOwnProperty(newToken)) {\n ret[newToken] = insert[newToken];\n }\n }\n }\n if (!insert.hasOwnProperty(token)) {\n ret[token] = grammar[token];\n }\n }\n }\n var old = root[inside];\n root[inside] = ret;\n _.languages.DFS(_.languages, function(key, value) {\n if (value === old && key != inside) {\n this[key] = ret;\n }\n });\n return ret;\n },\n // Traverse a language definition with Depth First Search\n DFS: function DFS(o, callback, type, visited) {\n visited = visited || {};\n var objId = _.util.objId;\n for (var i in o) {\n if (o.hasOwnProperty(i)) {\n callback.call(o, i, o[i], type || i);\n var property = o[i];\n var propertyType = _.util.type(property);\n if (propertyType === \"Object\" && !visited[objId(property)]) {\n visited[objId(property)] = true;\n DFS(property, callback, null, visited);\n } else if (propertyType === \"Array\" && !visited[objId(property)]) {\n visited[objId(property)] = true;\n DFS(property, callback, i, visited);\n }\n }\n }\n }\n },\n plugins: {},\n /**\n * Low-level function, only use if you know what you’re doing. It accepts a string of text as input\n * and the language definitions to use, and returns a string with the HTML produced.\n *\n * The following hooks will be run:\n * 1. `before-tokenize`\n * 2. `after-tokenize`\n * 3. `wrap`: On each {@link Token}.\n *\n * @param {string} text A string with the code to be highlighted.\n * @param {Grammar} grammar An object containing the tokens to use.\n *\n * Usually a language definition like `Prism.languages.markup`.\n * @param {string} language The name of the language definition passed to `grammar`.\n * @returns {string} The highlighted HTML.\n * @memberof Prism\n * @public\n * @example\n * Prism.highlight('var foo = true;', Prism.languages.javascript, 'javascript');\n */\n highlight: function(text, grammar, language) {\n var env = {\n code: text,\n grammar,\n language\n };\n _.hooks.run(\"before-tokenize\", env);\n if (!env.grammar) {\n throw new Error('The language \"' + env.language + '\" has no grammar.');\n }\n env.tokens = _.tokenize(env.code, env.grammar);\n _.hooks.run(\"after-tokenize\", env);\n return Token.stringify(_.util.encode(env.tokens), env.language);\n },\n /**\n * This is the heart of Prism, and the most low-level function you can use. It accepts a string of text as input\n * and the language definitions to use, and returns an array with the tokenized code.\n *\n * When the language definition includes nested tokens, the function is called recursively on each of these tokens.\n *\n * This method could be useful in other contexts as well, as a very crude parser.\n *\n * @param {string} text A string with the code to be highlighted.\n * @param {Grammar} grammar An object containing the tokens to use.\n *\n * Usually a language definition like `Prism.languages.markup`.\n * @returns {TokenStream} An array of strings and tokens, a token stream.\n * @memberof Prism\n * @public\n * @example\n * let code = `var foo = 0;`;\n * let tokens = Prism.tokenize(code, Prism.languages.javascript);\n * tokens.forEach(token => {\n * if (token instanceof Prism.Token && token.type === 'number') {\n * console.log(`Found numeric literal: ${token.content}`);\n * }\n * });\n */\n tokenize: function(text, grammar) {\n var rest = grammar.rest;\n if (rest) {\n for (var token in rest) {\n grammar[token] = rest[token];\n }\n delete grammar.rest;\n }\n var tokenList = new LinkedList();\n addAfter(tokenList, tokenList.head, text);\n matchGrammar(text, tokenList, grammar, tokenList.head, 0);\n return toArray(tokenList);\n },\n /**\n * @namespace\n * @memberof Prism\n * @public\n */\n hooks: {\n all: {},\n /**\n * Adds the given callback to the list of callbacks for the given hook.\n *\n * The callback will be invoked when the hook it is registered for is run.\n * Hooks are usually directly run by a highlight function but you can also run hooks yourself.\n *\n * One callback function can be registered to multiple hooks and the same hook multiple times.\n *\n * @param {string} name The name of the hook.\n * @param {HookCallback} callback The callback function which is given environment variables.\n * @public\n */\n add: function(name, callback) {\n var hooks2 = _.hooks.all;\n hooks2[name] = hooks2[name] || [];\n hooks2[name].push(callback);\n },\n /**\n * Runs a hook invoking all registered callbacks with the given environment variables.\n *\n * Callbacks will be invoked synchronously and in the order in which they were registered.\n *\n * @param {string} name The name of the hook.\n * @param {Object<string, any>} env The environment variables of the hook passed to all callbacks registered.\n * @public\n */\n run: function(name, env) {\n var callbacks = _.hooks.all[name];\n if (!callbacks || !callbacks.length) {\n return;\n }\n for (var i = 0, callback; callback = callbacks[i++]; ) {\n callback(env);\n }\n }\n },\n Token\n };\n function Token(type, content, alias, matchedStr) {\n this.type = type;\n this.content = content;\n this.alias = alias;\n this.length = (matchedStr || \"\").length | 0;\n }\n Token.stringify = function stringify(o, language) {\n if (typeof o == \"string\") {\n return o;\n }\n if (Array.isArray(o)) {\n var s = \"\";\n o.forEach(function(e) {\n s += stringify(e, language);\n });\n return s;\n }\n var env = {\n type: o.type,\n content: stringify(o.content, language),\n tag: \"span\",\n classes: [\"token\", o.type],\n attributes: {},\n language\n };\n var aliases = o.alias;\n if (aliases) {\n if (Array.isArray(aliases)) {\n Array.prototype.push.apply(env.classes, aliases);\n } else {\n env.classes.push(aliases);\n }\n }\n _.hooks.run(\"wrap\", env);\n var attributes = \"\";\n for (var name in env.attributes) {\n attributes += \" \" + name + '=\"' + (env.attributes[name] || \"\").replace(/\"/g, \""\") + '\"';\n }\n return \"<\" + env.tag + ' class=\"' + env.classes.join(\" \") + '\"' + attributes + \">\" + env.content + \"</\" + env.tag + \">\";\n };\n function matchPattern(pattern, pos, text, lookbehind) {\n pattern.lastIndex = pos;\n var match = pattern.exec(text);\n if (match && lookbehind && match[1]) {\n var lookbehindLength = match[1].length;\n match.index += lookbehindLength;\n match[0] = match[0].slice(lookbehindLength);\n }\n return match;\n }\n function matchGrammar(text, tokenList, grammar, startNode, startPos, rematch) {\n for (var token in grammar) {\n if (!grammar.hasOwnProperty(token) || !grammar[token]) {\n continue;\n }\n var patterns = grammar[token];\n patterns = Array.isArray(patterns) ? patterns : [patterns];\n for (var j = 0; j < patterns.length; ++j) {\n if (rematch && rematch.cause == token + \",\" + j) {\n return;\n }\n var patternObj = patterns[j];\n var inside = patternObj.inside;\n var lookbehind = !!patternObj.lookbehind;\n var greedy = !!patternObj.greedy;\n var alias = patternObj.alias;\n if (greedy && !patternObj.pattern.global) {\n var flags = patternObj.pattern.toString().match(/[imsuy]*$/)[0];\n patternObj.pattern = RegExp(patternObj.pattern.source, flags + \"g\");\n }\n var pattern = patternObj.pattern || patternObj;\n for (var currentNode = startNode.next, pos = startPos; currentNode !== tokenList.tail; pos += currentNode.value.length, currentNode = currentNode.next) {\n if (rematch && pos >= rematch.reach) {\n break;\n }\n var str = currentNode.value;\n if (tokenList.length > text.length) {\n return;\n }\n if (str instanceof Token) {\n continue;\n }\n var removeCount = 1;\n var match;\n if (greedy) {\n match = matchPattern(pattern, pos, text, lookbehind);\n if (!match || match.index >= text.length) {\n break;\n }\n var from = match.index;\n var to = match.index + match[0].length;\n var p = pos;\n p += currentNode.value.length;\n while (from >= p) {\n currentNode = currentNode.next;\n p += currentNode.value.length;\n }\n p -= currentNode.value.length;\n pos = p;\n if (currentNode.value instanceof Token) {\n continue;\n }\n for (var k = currentNode; k !== tokenList.tail && (p < to || typeof k.value === \"string\"); k = k.next) {\n removeCount++;\n p += k.value.length;\n }\n removeCount--;\n str = text.slice(pos, p);\n match.index -= pos;\n } else {\n match = matchPattern(pattern, 0, str, lookbehind);\n if (!match) {\n continue;\n }\n }\n var from = match.index;\n var matchStr = match[0];\n var before = str.slice(0, from);\n var after = str.slice(from + matchStr.length);\n var reach = pos + str.length;\n if (rematch && reach > rematch.reach) {\n rematch.reach = reach;\n }\n var removeFrom = currentNode.prev;\n if (before) {\n removeFrom = addAfter(tokenList, removeFrom, before);\n pos += before.length;\n }\n removeRange(tokenList, removeFrom, removeCount);\n var wrapped = new Token(token, inside ? _.tokenize(matchStr, inside) : matchStr, alias, matchStr);\n currentNode = addAfter(tokenList, removeFrom, wrapped);\n if (after) {\n addAfter(tokenList, currentNode, after);\n }\n if (removeCount > 1) {\n var nestedRematch = {\n cause: token + \",\" + j,\n reach\n };\n matchGrammar(text, tokenList, grammar, currentNode.prev, pos, nestedRematch);\n if (rematch && nestedRematch.reach > rematch.reach) {\n rematch.reach = nestedRematch.reach;\n }\n }\n }\n }\n }\n }\n function LinkedList() {\n var head = { value: null, prev: null, next: null };\n var tail = { value: null, prev: head, next: null };\n head.next = tail;\n this.head = head;\n this.tail = tail;\n this.length = 0;\n }\n function addAfter(list, node, value) {\n var next = node.next;\n var newNode = { value, prev: node, next };\n node.next = newNode;\n next.prev = newNode;\n list.length++;\n return newNode;\n }\n function removeRange(list, node, count) {\n var next = node.next;\n for (var i = 0; i < count && next !== list.tail; i++) {\n next = next.next;\n }\n node.next = next;\n next.prev = node;\n list.length -= i;\n }\n function toArray(list) {\n var array = [];\n var node = list.head.next;\n while (node !== list.tail) {\n array.push(node.value);\n node = node.next;\n }\n return array;\n }\n return _;\n }();\n module.exports = Prism2;\n Prism2.default = Prism2;\n }\n});\n\n// src/prism-langs.ts\nvar Prism = __toESM(require_prism());\n!function(e) {\n var n = { pattern: /\\\\[\\\\(){}[\\]^$+*?|.]/, alias: \"escape\" }, t = /\\\\(?:x[\\da-fA-F]{2}|u[\\da-fA-F]{4}|u\\{[\\da-fA-F]+\\}|0[0-7]{0,2}|[123][0-7]{2}|c[a-zA-Z]|.)/, a = \"(?:[^\\\\\\\\-]|\" + t.source + \")\", a = RegExp(a + \"-\" + a), r = { pattern: /(<|')[^<>']+(?=[>']$)/, lookbehind: true, alias: \"variable\" };\n e.languages.regex = { \"char-class\": { pattern: /((?:^|[^\\\\])(?:\\\\\\\\)*)\\[(?:[^\\\\\\]]|\\\\[\\s\\S])*\\]/, lookbehind: true, inside: { \"char-class-negation\": { pattern: /(^\\[)\\^/, lookbehind: true, alias: \"operator\" }, \"char-class-punctuation\": { pattern: /^\\[|\\]$/, alias: \"punctuation\" }, range: { pattern: a, inside: { escape: t, \"range-punctuation\": { pattern: /-/, alias: \"operator\" } } }, \"special-escape\": n, \"char-set\": { pattern: /\\\\[wsd]|\\\\p\\{[^{}]+\\}/i, alias: \"class-name\" }, escape: t } }, \"special-escape\": n, \"char-set\": { pattern: /\\.|\\\\[wsd]|\\\\p\\{[^{}]+\\}/i, alias: \"class-name\" }, backreference: [{ pattern: /\\\\(?![123][0-7]{2})[1-9]/, alias: \"keyword\" }, { pattern: /\\\\k<[^<>']+>/, alias: \"keyword\", inside: { \"group-name\": r } }], anchor: { pattern: /[$^]|\\\\[ABbGZz]/, alias: \"function\" }, escape: t, group: [{ pattern: /\\((?:\\?(?:<[^<>']+>|'[^<>']+'|[>:]|<?[=!]|[idmnsuxU]+(?:-[idmnsuxU]+)?:?))?/, alias: \"punctuation\", inside: { \"group-name\": r } }, { pattern: /\\)/, alias: \"punctuation\" }], quantifier: { pattern: /(?:[+*?]|\\{\\d+(?:,\\d*)?\\})[?+]?/, alias: \"number\" }, alternation: { pattern: /\\|/, alias: \"keyword\" } };\n}(Prism), Prism.languages.clike = { comment: [{ pattern: /(^|[^\\\\])\\/\\*[\\s\\S]*?(?:\\*\\/|$)/, lookbehind: true, greedy: true }, { pattern: /(^|[^\\\\:])\\/\\/.*/, lookbehind: true, greedy: true }], string: { pattern: /([\"'])(?:\\\\(?:\\r\\n|[\\s\\S])|(?!\\1)[^\\\\\\r\\n])*\\1/, greedy: true }, \"class-name\": { pattern: /(\\b(?:class|extends|implements|instanceof|interface|new|trait)\\s+|\\bcatch\\s+\\()[\\w.\\\\]+/i, lookbehind: true, inside: { punctuation: /[.\\\\]/ } }, keyword: /\\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\\b/, boolean: /\\b(?:false|true)\\b/, function: /\\b\\w+(?=\\()/, number: /\\b0x[\\da-f]+\\b|(?:\\b\\d+(?:\\.\\d*)?|\\B\\.\\d+)(?:e[+-]?\\d+)?/i, operator: /[<>]=?|[!=]=?=?|--?|\\+\\+?|&&?|\\|\\|?|[?*/~^%]/, punctuation: /[{}[\\];(),.:]/ }, Prism.languages.javascript = Prism.languages.extend(\"clike\", { \"class-name\": [Prism.languages.clike[\"class-name\"], { pattern: /(^|[^$\\w\\xA0-\\uFFFF])(?!\\s)[_$A-Z\\xA0-\\uFFFF](?:(?!\\s)[$\\w\\xA0-\\uFFFF])*(?=\\.(?:constructor|prototype))/, lookbehind: true }], keyword: [{ pattern: /((?:^|\\})\\s*)catch\\b/, lookbehind: true }, { pattern: /(^|[^.]|\\.\\.\\.\\s*)\\b(?:as|assert(?=\\s*\\{)|async(?=\\s*(?:function\\b|\\(|[$\\w\\xA0-\\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\\s*(?:\\{|$))|for|from(?=\\s*(?:['\"]|$))|function|(?:get|set)(?=\\s*(?:[#\\[$\\w\\xA0-\\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\\b/, lookbehind: true }], function: /#?(?!\\s)[_$a-zA-Z\\xA0-\\uFFFF](?:(?!\\s)[$\\w\\xA0-\\uFFFF])*(?=\\s*(?:\\.\\s*(?:apply|bind|call)\\s*)?\\()/, number: { pattern: RegExp(/(^|[^\\w$])/.source + \"(?:\" + /NaN|Infinity/.source + \"|\" + /0[bB][01]+(?:_[01]+)*n?/.source + \"|\" + /0[oO][0-7]+(?:_[0-7]+)*n?/.source + \"|\" + /0[xX][\\dA-Fa-f]+(?:_[\\dA-Fa-f]+)*n?/.source + \"|\" + /\\d+(?:_\\d+)*n/.source + \"|\" + /(?:\\d+(?:_\\d+)*(?:\\.(?:\\d+(?:_\\d+)*)?)?|\\.\\d+(?:_\\d+)*)(?:[Ee][+-]?\\d+(?:_\\d+)*)?/.source + \")\" + /(?![\\w$])/.source), lookbehind: true }, operator: /--|\\+\\+|\\*\\*=?|=>|&&=?|\\|\\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\\.{3}|\\?\\?=?|\\?\\.?|[~:]/ }), Prism.languages.javascript[\"class-name\"][0].pattern = /(\\b(?:class|extends|implements|instanceof|interface|new)\\s+)[\\w.\\\\]+/, Prism.languages.insertBefore(\"javascript\", \"keyword\", { regex: { pattern: RegExp(/((?:^|[^$\\w\\xA0-\\uFFFF.\"'\\])\\s]|\\b(?:return|yield))\\s*)/.source + /\\//.source + \"(?:\" + /(?:\\[(?:[^\\]\\\\\\r\\n]|\\\\.)*\\]|\\\\.|[^/\\\\\\[\\r\\n])+\\/[dgimyus]{0,7}/.source + \"|\" + /(?:\\[(?:[^[\\]\\\\\\r\\n]|\\\\.|\\[(?:[^[\\]\\\\\\r\\n]|\\\\.|\\[(?:[^[\\]\\\\\\r\\n]|\\\\.)*\\])*\\])*\\]|\\\\.|[^/\\\\\\[\\r\\n])+\\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source + \")\" + /(?=(?:\\s|\\/\\*(?:[^*]|\\*(?!\\/))*\\*\\/)*(?:$|[\\r\\n,.;:})\\]]|\\/\\/))/.source), lookbehind: true, greedy: true, inside: { \"regex-source\": { pattern: /^(\\/)[\\s\\S]+(?=\\/[a-z]*$)/, lookbehind: true, alias: \"language-regex\", inside: Prism.languages.regex }, \"regex-delimiter\": /^\\/|\\/$/, \"regex-flags\": /^[a-z]+$/ } }, \"function-variable\": { pattern: /#?(?!\\s)[_$a-zA-Z\\xA0-\\uFFFF](?:(?!\\s)[$\\w\\xA0-\\uFFFF])*(?=\\s*[=:]\\s*(?:async\\s*)?(?:\\bfunction\\b|(?:\\((?:[^()]|\\([^()]*\\))*\\)|(?!\\s)[_$a-zA-Z\\xA0-\\uFFFF](?:(?!\\s)[$\\w\\xA0-\\uFFFF])*)\\s*=>))/, alias: \"function\" }, parameter: [{ pattern: /(function(?:\\s+(?!\\s)[_$a-zA-Z\\xA0-\\uFFFF](?:(?!\\s)[$\\w\\xA0-\\uFFFF])*)?\\s*\\(\\s*)(?!\\s)(?:[^()\\s]|\\s+(?![\\s)])|\\([^()]*\\))+(?=\\s*\\))/, lookbehind: true, inside: Prism.languages.javascript }, { pattern: /(^|[^$\\w\\xA0-\\uFFFF])(?!\\s)[_$a-z\\xA0-\\uFFFF](?:(?!\\s)[$\\w\\xA0-\\uFFFF])*(?=\\s*=>)/i, lookbehind: true, inside: Prism.languages.javascript }, { pattern: /(\\(\\s*)(?!\\s)(?:[^()\\s]|\\s+(?![\\s)])|\\([^()]*\\))+(?=\\s*\\)\\s*=>)/, lookbehind: true, inside: Prism.languages.javascript }, { pattern: /((?:\\b|\\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\\w\\xA0-\\uFFFF]))(?:(?!\\s)[_$a-zA-Z\\xA0-\\uFFFF](?:(?!\\s)[$\\w\\xA0-\\uFFFF])*\\s*)\\(\\s*|\\]\\s*\\(\\s*)(?!\\s)(?:[^()\\s]|\\s+(?![\\s)])|\\([^()]*\\))+(?=\\s*\\)\\s*\\{)/, lookbehind: true, inside: Prism.languages.javascript }], constant: /\\b[A-Z](?:[A-Z_]|\\dx?)*\\b/ }), Prism.languages.insertBefore(\"javascript\", \"string\", { hashbang: { pattern: /^#!.*/, greedy: true, alias: \"comment\" }, \"template-string\": { pattern: /`(?:\\\\[\\s\\S]|\\$\\{(?:[^{}]|\\{(?:[^{}]|\\{[^}]*\\})*\\})+\\}|(?!\\$\\{)[^\\\\`])*`/, greedy: true, inside: { \"template-punctuation\": { pattern: /^`|`$/, alias: \"string\" }, interpolation: { pattern: /((?:^|[^\\\\])(?:\\\\{2})*)\\$\\{(?:[^{}]|\\{(?:[^{}]|\\{[^}]*\\})*\\})+\\}/, lookbehind: true, inside: { \"interpolation-punctuation\": { pattern: /^\\$\\{|\\}$/, alias: \"punctuation\" }, rest: Prism.languages.javascript } }, string: /[\\s\\S]+/ } }, \"string-property\": { pattern: /((?:^|[,{])[ \\t]*)([\"'])(?:\\\\(?:\\r\\n|[\\s\\S])|(?!\\2)[^\\\\\\r\\n])*\\2(?=\\s*:)/m, lookbehind: true, greedy: true, alias: \"property\" } }), Prism.languages.insertBefore(\"javascript\", \"operator\", { \"literal-property\": { pattern: /((?:^|[,{])[ \\t]*)(?!\\s)[_$a-zA-Z\\xA0-\\uFFFF](?:(?!\\s)[$\\w\\xA0-\\uFFFF])*(?=\\s*:)/m, lookbehind: true, alias: \"property\" } }), Prism.languages.markup && (Prism.languages.markup.tag.addInlined(\"script\", \"javascript\"), Prism.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source, \"javascript\")), Prism.languages.js = Prism.languages.javascript, Prism.languages.actionscript = Prism.languages.extend(\"javascript\", { keyword: /\\b(?:as|break|case|catch|class|const|default|delete|do|dynamic|each|else|extends|final|finally|for|function|get|if|implements|import|in|include|instanceof|interface|internal|is|namespace|native|new|null|override|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|use|var|void|while|with)\\b/, operator: /\\+\\+|--|(?:[+\\-*\\/%^]|&&?|\\|\\|?|<<?|>>?>?|[!=]=?)=?|[~?@]/ }), Prism.languages.actionscript[\"class-name\"].alias = \"function\", delete Prism.languages.actionscript.parameter, delete Prism.languages.actionscript[\"literal-property\"], Prism.languages.markup && Prism.languages.insertBefore(\"actionscript\", \"string\", { xml: { pattern: /(^|[^.])<\\/?\\w+(?:\\s+[^\\s>\\/=]+=(\"|')(?:\\\\[\\s\\S]|(?!\\2)[^\\\\])*\\2)*\\s*\\/?>/, lookbehind: true, inside: Prism.languages.markup } }), function(e) {\n var n = /#(?!\\{).+/, t = { pattern: /#\\{[^}]+\\}/, alias: \"variable\" };\n e.languages.coffeescript = e.languages.extend(\"javascript\", { comment: n, string: [{ pattern: /'(?:\\\\[\\s\\S]|[^\\\\'])*'/, greedy: true }, { pattern: /\"(?:\\\\[\\s\\S]|[^\\\\\"])*\"/, greedy: true, inside: { interpolation: t } }], keyword: /\\b(?:and|break|by|catch|class|continue|debugger|delete|do|each|else|extend|extends|false|finally|for|if|in|instanceof|is|isnt|let|loop|namespace|new|no|not|null|of|off|on|or|own|return|super|switch|then|this|throw|true|try|typeof|undefined|unless|until|when|while|window|with|yes|yield)\\b/, \"class-member\": { pattern: /@(?!\\d)\\w+/, alias: \"variable\" } }), e.languages.insertBefore(\"coffeescript\", \"comment\", { \"multiline-comment\": { pattern: /###[\\s\\S]+?###/, alias: \"comment\" }, \"block-regex\": { pattern: /\\/{3}[\\s\\S]*?\\/{3}/, alias: \"regex\", inside: { comment: n, interpolation: t } } }), e.languages.insertBefore(\"coffeescript\", \"string\", { \"inline-javascript\": { pattern: /`(?:\\\\[\\s\\S]|[^\\\\`])*`/, inside: { delimiter: { pattern: /^`|`$/, alias: \"punctuation\" }, script: { pattern: /[\\s\\S]+/, alias: \"language-javascript\", inside: e.languages.javascript } } }, \"multiline-string\": [{ pattern: /'''[\\s\\S]*?'''/, greedy: true, alias: \"string\" }, { pattern: /\"\"\"[\\s\\S]*?\"\"\"/, greedy: true, alias: \"string\", inside: { interpolation: t } }] }), e.languages.insertBefore(\"coffeescript\", \"keyword\", { property: /(?!\\d)\\w+(?=\\s*:(?!:))/ }), delete e.languages.coffeescript[\"template-string\"], e.languages.coffee = e.languages.coffeescript;\n}(Prism), function(l) {\n var e = l.languages.javadoclike = { parameter: { pattern: /(^[\\t ]*(?:\\/{3}|\\*|\\/\\*\\*)\\s*@(?:arg|arguments|param)\\s+)\\w+/m, lookbehind: true }, keyword: { pattern: /(^[\\t ]*(?:\\/{3}|\\*|\\/\\*\\*)\\s*|\\{)@[a-z][a-zA-Z-]+\\b/m, lookbehind: true }, punctuation: /[{}]/ };\n Object.defineProperty(e, \"addSupport\", { value: function(e2, o) {\n (e2 = \"string\" == typeof e2 ? [e2] : e2).forEach(function(e3) {\n var n = function(e4) {\n e4.inside || (e4.inside = {}), e4.inside.rest = o;\n }, t = \"doc-comment\";\n if (a = l.languages[e3]) {\n var a, r = a[t];\n if ((r = r ? r : (a = l.languages.insertBefore(e3, \"comment\", { \"doc-comment\": { pattern: /(^|[^\\\\])\\/\\*\\*[^/][\\s\\S]*?(?:\\*\\/|$)/, lookbehind: true, alias: \"comment\" } }))[t]) instanceof RegExp && (r = a[t] = { pattern: r }), Array.isArray(r))\n for (var s = 0, i = r.length; s < i; s++)\n r[s] instanceof RegExp && (r[s] = { pattern: r[s] }), n(r[s]);\n else\n n(r);\n }\n });\n } }), e.addSupport([\"java\", \"javascript\", \"php\"], e);\n}(Prism), function(e) {\n var n = /(?:\"(?:\\\\(?:\\r\\n|[\\s\\S])|[^\"\\\\\\r\\n])*\"|'(?:\\\\(?:\\r\\n|[\\s\\S])|[^'\\\\\\r\\n])*')/, n = (e.languages.css = { comment: /\\/\\*[\\s\\S]*?\\*\\//, atrule: { pattern: RegExp(\"@[\\\\w-](?:\" + /[^;{\\s\"']|\\s+(?!\\s)/.source + \"|\" + n.source + \")*?\" + /(?:;|(?=\\s*\\{))/.source), inside: { rule: /^@[\\w-]+/, \"selector-function-argument\": { pattern: /(\\bselector\\s*\\(\\s*(?![\\s)]))(?:[^()\\s]|\\s+(?![\\s)])|\\((?:[^()]|\\([^()]*\\))*\\))+(?=\\s*\\))/, lookbehind: true, alias: \"selector\" }, keyword: { pattern: /(^|[^\\w-])(?:and|not|only|or)(?![\\w-])/, lookbehind: true } } }, url: { pattern: RegExp(\"\\\\burl\\\\((?:\" + n.source + \"|\" + /(?:[^\\\\\\r\\n()\"']|\\\\[\\s\\S])*/.source + \")\\\\)\", \"i\"), greedy: true, inside: { function: /^url/i, punctuation: /^\\(|\\)$/, string: { pattern: RegExp(\"^\" + n.source + \"$\"), alias: \"url\" } } }, selector: { pattern: RegExp(`(^|[{}\\\\s])[^{}\\\\s](?:[^{};\"'\\\\s]|\\\\s+(?![\\\\s{])|` + n.source + \")*(?=\\\\s*\\\\{)\"), lookbehind: true }, string: { pattern: n, greedy: true }, property: { pattern: /(^|[^-\\w\\xA0-\\uFFFF])(?!\\s)[-_a-z\\xA0-\\uFFFF](?:(?!\\s)[-\\w\\xA0-\\uFFFF])*(?=\\s*:)/i, lookbehind: true }, important: /!important\\b/i, function: { pattern: /(^|[^-a-z0-9])[-a-z0-9]+(?=\\()/i, lookbehind: true }, punctuation: /[(){};:,]/ }, e.languages.css.atrule.inside.rest = e.languages.css, e.languages.markup);\n n && (n.tag.addInlined(\"style\", \"css\"), n.tag.addAttribute(\"style\", \"css\"));\n}(Prism), function(e) {\n var n = /(\"|')(?:\\\\(?:\\r\\n|[\\s\\S])|(?!\\1)[^\\\\\\r\\n])*\\1/, n = (e.languages.css.selector = { pattern: e.languages.css.selector.pattern, lookbehind: true, inside: n = { \"pseudo-element\": /:(?:after|before|first-letter|first-line|selection)|::[-\\w]+/, \"pseudo-class\": /:[-\\w]+/, class: /\\.[-\\w]+/, id: /#[-\\w]+/, attribute: { pattern: RegExp(`\\\\[(?:[^[\\\\]\"']|` + n.source + \")*\\\\]\"), greedy: true, inside: { punctuation: /^\\[|\\]$/, \"case-sensitivity\": { pattern: /(\\s)[si]$/i, lookbehind: true, alias: \"keyword\" }, namespace: { pattern: /^(\\s*)(?:(?!\\s)[-*\\w\\xA0-\\uFFFF])*\\|(?!=)/, lookbehind: true, inside: { punctuation: /\\|$/ } }, \"attr-name\": { pattern: /^(\\s*)(?:(?!\\s)[-\\w\\xA0-\\uFFFF])+/, lookbehind: true }, \"attr-value\": [n, { pattern: /(=\\s*)(?:(?!\\s)[-\\w\\xA0-\\uFFFF])+(?=\\s*$)/, lookbehind: true }], operator: /[|~*^$]?=/ } }, \"n-th\": [{ pattern: /(\\(\\s*)[+-]?\\d*[\\dn](?:\\s*[+-]\\s*\\d+)?(?=\\s*\\))/, lookbehind: true, inside: { number: /[\\dn]+/, operator: /[+-]/ } }, { pattern: /(\\(\\s*)(?:even|odd)(?=\\s*\\))/i, lookbehind: true }], combinator: />|\\+|~|\\|\\|/, punctuation: /[(),]/ } }, e.languages.css.atrule.inside[\"selector-function-argument\"].inside = n, e.languages.insertBefore(\"css\", \"property\", { variable: { pattern: /(^|[^-\\w\\xA0-\\uFFFF])--(?!\\s)[-_a-z\\xA0-\\uFFFF](?:(?!\\s)[-\\w\\xA0-\\uFFFF])*/i, lookbehind: true } }), { pattern: /(\\b\\d+)(?:%|[a-z]+(?![\\w-]))/, lookbehind: true }), t = { pattern: /(^|[^\\w.-])-?(?:\\d+(?:\\.\\d+)?|\\.\\d+)/, lookbehind: true };\n e.languages.insertBefore(\"css\", \"function\", { operator: { pattern: /(\\s)[+\\-*\\/](?=\\s)/, lookbehind: true }, hexcode: { pattern: /\\B#[\\da-f]{3,8}\\b/i, alias: \"color\" }, color: [{ pattern: /(^|[^\\w-])(?:AliceBlue|AntiqueWhite|Aqua|Aquamarine|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenRod|DarkGr[ae]y|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGr[ae]y|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGr[ae]y|DodgerBlue|FireBrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|GoldenRod|Gr[ae]y|Green|GreenYellow|HoneyDew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenRodYellow|LightGr[ae]y|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGr[ae]y|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquaMarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenRod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|RebeccaPurple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGr[ae]y|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen)(?![\\w-])/i, lookbehind: true }, { pattern: /\\b(?:hsl|rgb)\\(\\s*\\d{1,3}\\s*,\\s*\\d{1,3}%?\\s*,\\s*\\d{1,3}%?\\s*\\)\\B|\\b(?:hsl|rgb)a\\(\\s*\\d{1,3}\\s*,\\s*\\d{1,3}%?\\s*,\\s*\\d{1,3}%?\\s*,\\s*(?:0|0?\\.\\d+|1)\\s*\\)\\B/i, inside: { unit: n, number: t, function: /[\\w-]+(?=\\()/, punctuation: /[(),]/ } }], entity: /\\\\[\\da-f]{1,8}/i, unit: n, number: t });\n}(Prism), function(e) {\n var n = /[*&][^\\s[\\]{},]+/, t = /!(?:<[\\w\\-%#;/?:@&=+$,.!~*'()[\\]]+>|(?:[a-zA-Z\\d-]*!)?[\\w\\-%#;/?:@&=+$.~*'()]+)?/, a = \"(?:\" + t.source + \"(?:[ \t]+\" + n.source + \")?|\" + n.source + \"(?:[ \t]+\" + t.source + \")?)\", r = /(?:[^\\s\\x00-\\x08\\x0e-\\x1f!\"#%&'*,\\-:>?@[\\]`{|}\\x7f-\\x84\\x86-\\x9f\\ud800-\\udfff\\ufffe\\uffff]|[?:-]<PLAIN>)(?:[ \\t]*(?:(?![#:])<PLAIN>|:<PLAIN>))*/.source.replace(/<PLAIN>/g, function() {\n return /[^\\s\\x00-\\x08\\x0e-\\x1f,[\\]{}\\x7f-\\x84\\x86-\\x9f\\ud800-\\udfff\\ufffe\\uffff]/.source;\n }), s = /\"(?:[^\"\\\\\\r\\n]|\\\\.)*\"|'(?:[^'\\\\\\r\\n]|\\\\.)*'/.source;\n function i(e2, n2) {\n n2 = (n2 || \"\").replace(/m/g, \"\") + \"m\";\n var t2 = /([:\\-,[{]\\s*(?:\\s<<prop>>[ \\t]+)?)(?:<<value>>)(?=[ \\t]*(?:$|,|\\]|\\}|(?:[\\r\\n]\\s*)?#))/.source.replace(/<<prop>>/g, function() {\n return a;\n }).replace(/<<value>>/g, function() {\n return e2;\n });\n return RegExp(t2, n2);\n }\n e.languages.yaml = { scalar: { pattern: RegExp(/([\\-:]\\s*(?:\\s<<prop>>[ \\t]+)?[|>])[ \\t]*(?:((?:\\r?\\n|\\r)[ \\t]+)\\S[^\\r\\n]*(?:\\2[^\\r\\n]+)*)/.source.replace(/<<prop>>/g, function() {\n return a;\n })), lookbehind: true, alias: \"string\" }, comment: /#.*/, key: { pattern: RegExp(/((?:^|[:\\-,[{\\r\\n?])[ \\t]*(?:<<prop>>[ \\t]+)?)<<key>>(?=\\s*:\\s)/.source.replace(/<<prop>>/g, function() {\n return a;\n }).replace(/<<key>>/g, function() {\n return \"(?:\" + r + \"|\" + s + \")\";\n })), lookbehind: true, greedy: true, alias: \"atrule\" }, directive: { pattern: /(^[ \\t]*)%.+/m, lookbehind: true, alias: \"important\" }, datetime: { pattern: i(/\\d{4}-\\d\\d?-\\d\\d?(?:[tT]|[ \\t]+)\\d\\d?:\\d{2}:\\d{2}(?:\\.\\d*)?(?:[ \\t]*(?:Z|[-+]\\d\\d?(?::\\d{2})?))?|\\d{4}-\\d{2}-\\d{2}|\\d\\d?:\\d{2}(?::\\d{2}(?:\\.\\d*)?)?/.source), lookbehind: true, alias: \"number\" }, boolean: { pattern: i(/false|true/.source, \"i\"), lookbehind: true, alias: \"important\" }, null: { pattern: i(/null|~/.source, \"i\"), lookbehind: true, alias: \"important\" }, string: { pattern: i(s), lookbehind: true, greedy: true }, number: { pattern: i(/[+-]?(?:0x[\\da-f]+|0o[0-7]+|(?:\\d+(?:\\.\\d*)?|\\.\\d+)(?:e[+-]?\\d+)?|\\.inf|\\.nan)/.source, \"i\"), lookbehind: true }, tag: t, important: n, punctuation: /---|[:[\\]{}\\-,|>?]|\\.\\.\\./ }, e.languages.yml = e.languages.yaml;\n}(Prism), Prism.languages.markup = { comment: { pattern: /<!--(?:(?!<!--)[\\s\\S])*?-->/, greedy: true }, prolog: { pattern: /<\\?[\\s\\S]+?\\?>/, greedy: true }, doctype: { pattern: /<!DOCTYPE(?:[^>\"'[\\]]|\"[^\"]*\"|'[^']*')+(?:\\[(?:[^<\"'\\]]|\"[^\"]*\"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\\]\\s*)?>/i, greedy: true, inside: { \"internal-subset\": { pattern: /(^[^\\[]*\\[)[\\s\\S]+(?=\\]>$)/, lookbehind: true, greedy: true, inside: null }, string: { pattern: /\"[^\"]*\"|'[^']*'/, greedy: true }, punctuation: /^<!|>$|[[\\]]/, \"doctype-tag\": /^DOCTYPE/i, name: /[^\\s<>'\"]+/ } }, cdata: { pattern: /<!\\[CDATA\\[[\\s\\S]*?\\]\\]>/i, greedy: true }, tag: { pattern: /<\\/?(?!\\d)[^\\s>\\/=$<%]+(?:\\s(?:\\s*[^\\s>\\/=]+(?:\\s*=\\s*(?:\"[^\"]*\"|'[^']*'|[^\\s'\">=]+(?=[\\s>]))|(?=[\\s/>])))+)?\\s*\\/?>/, greedy: true, inside: { tag: { pattern: /^<\\/?[^\\s>\\/]+/, inside: { punctuation: /^<\\/?/, namespace: /^[^\\s>\\/:]+:/ } }, \"special-attr\": [], \"attr-value\": { pattern: /=\\s*(?:\"[^\"]*\"|'[^']*'|[^\\s'\">=]+)/, inside: { punctuation: [{ pattern: /^=/, alias: \"attr-equals\" }, { pattern: /^(\\s*)[\"']|[\"']$/, lookbehind: true }] } }, punctuation: /\\/?>/, \"attr-name\": { pattern: /[^\\s>\\/]+/, inside: { namespace: /^[^\\s>\\/:]+:/ } } } }, entity: [{ pattern: /&[\\da-z]{1,8};/i, alias: \"named-entity\" }, /&#x?[\\da-f]{1,8};/i] }, Prism.languages.markup.tag.inside[\"attr-value\"].inside.entity = Prism.languages.markup.entity, Prism.languages.markup.doctype.inside[\"internal-subset\"].inside = Prism.languages.markup, Prism.hooks.add(\"wrap\", function(e) {\n \"entity\" === e.type && (e.attributes.title = e.content.replace(/&/, \"&\"));\n}), Object.defineProperty(Prism.languages.markup.tag, \"addInlined\", { value: function(e, n) {\n var t = {}, t = (t[\"language-\" + n] = { pattern: /(^<!\\[CDATA\\[)[\\s\\S]+?(?=\\]\\]>$)/i, lookbehind: true, inside: Prism.languages[n] }, t.cdata = /^<!\\[CDATA\\[|\\]\\]>$/i, { \"included-cdata\": { pattern: /<!\\[CDATA\\[[\\s\\S]*?\\]\\]>/i, inside: t } }), n = (t[\"language-\" + n] = { pattern: /[\\s\\S]+/, inside: Prism.languages[n] }, {});\n n[e] = { pattern: RegExp(/(<__[^>]*>)(?:<!\\[CDATA\\[(?:[^\\]]|\\](?!\\]>))*\\]\\]>|(?!<!\\[CDATA\\[)[\\s\\S])*?(?=<\\/__>)/.source.replace(/__/g, function() {\n return e;\n }), \"i\"), lookbehind: true, greedy: true, inside: t }, Prism.languages.insertBefore(\"markup\", \"cdata\", n);\n} }), Object.defineProperty(Prism.languages.markup.tag, \"addAttribute\", { value: function(e, n) {\n Prism.languages.markup.tag.inside[\"special-attr\"].push({ pattern: RegExp(/(^|[\"'\\s])/.source + \"(?:\" + e + \")\" + /\\s*=\\s*(?:\"[^\"]*\"|'[^']*'|[^\\s'\">=]+(?=[\\s>]))/.source, \"i\"), lookbehind: true, inside: { \"attr-name\": /^[^\\s=]+/, \"attr-value\": { pattern: /=[\\s\\S]+/, inside: { value: { pattern: /(^=\\s*([\"']|(?![\"'])))\\S[\\s\\S]*(?=\\2$)/, lookbehind: true, alias: [n, \"language-\" + n], inside: Prism.languages[n] }, punctuation: [{ pattern: /^=/, alias: \"attr-equals\" }, /\"|'/] } } } });\n} }), Prism.languages.html = Prism.languages.markup, Prism.languages.mathml = Prism.languages.markup, Prism.languages.svg = Prism.languages.markup, Prism.languages.xml = Prism.languages.extend(\"markup\", {}), Prism.languages.ssml = Prism.languages.xml, Prism.languages.atom = Prism.languages.xml, Prism.languages.rss = Prism.languages.xml, function(o) {\n var n = /(?:\\\\.|[^\\\\\\n\\r]|(?:\\n|\\r\\n?)(?![\\r\\n]))/.source;\n function e(e2) {\n return e2 = e2.replace(/<inner>/g, function() {\n return n;\n }), RegExp(/((?:^|[^\\\\])(?:\\\\{2})*)/.source + \"(?:\" + e2 + \")\");\n }\n var t = /(?:\\\\.|``(?:[^`\\r\\n]|`(?!`))+``|`[^`\\r\\n]+`|[^\\\\|\\r\\n`])+/.source, a = /\\|?__(?:\\|__)+\\|?(?:(?:\\n|\\r\\n?)|(?![\\s\\S]))/.source.replace(/__/g, function() {\n return t;\n }), r = /\\|?[ \\t]*:?-{3,}:?[ \\t]*(?:\\|[ \\t]*:?-{3,}:?[ \\t]*)+\\|?(?:\\n|\\r\\n?)/.source, l = (o.languages.markdown = o.languages.extend(\"markup\", {}), o.languages.insertBefore(\"markdown\", \"prolog\", { \"front-matter-block\": { pattern: /(^(?:\\s*[\\r\\n])?)---(?!.)[\\s\\S]*?[\\r\\n]---(?!.)/, lookbehind: true, greedy: true, inside: { punctuation: /^---|---$/, \"front-matter\": { pattern: /\\S+(?:\\s+\\S+)*/, alias: [\"yaml\", \"language-yaml\"], inside: o.languages.yaml } } }, blockquote: { pattern: /^>(?:[\\t ]*>)*/m, alias: \"punctuation\" }, table: { pattern: RegExp(\"^\" + a + r + \"(?:\" + a + \")*\", \"m\"), inside: { \"table-data-rows\": { pattern: RegExp(\"^(\" + a + r + \")(?:\" + a + \")*$\"), lookbehind: true, inside: { \"table-data\": { pattern: RegExp(t), inside: o.languages.markdown }, punctuation: /\\|/ } }, \"table-line\": { pattern: RegExp(\"^(\" + a + \")\" + r + \"$\"), lookbehind: true, inside: { punctuation: /\\||:?-{3,}:?/ } }, \"table-header-row\": { pattern: RegExp(\"^\" + a + \"$\"), inside: { \"table-header\": { pattern: RegExp(t), alias: \"important\", inside: o.languages.markdown }, punctuation: /\\|/ } } } }, code: [{ pattern: /((?:^|\\n)[ \\t]*\\n|(?:^|\\r\\n?)[ \\t]*\\r\\n?)(?: {4}|\\t).+(?:(?:\\n|\\r\\n?)(?: {4}|\\t).+)*/, lookbehind: true, alias: \"keyword\" }, { pattern: /^```[\\s\\S]*?^```$/m, greedy: true, inside: { \"code-block\": { pattern: /^(```.*(?:\\n|\\r\\n?))[\\s\\S]+?(?=(?:\\n|\\r\\n?)^```$)/m, lookbehind: true }, \"code-language\": { pattern: /^(```).+/, lookbehind: true }, punctuation: /```/ } }], title: [{ pattern: /\\S.*(?:\\n|\\r\\n?)(?:==+|--+)(?=[ \\t]*$)/m, alias: \"important\", inside: { punctuation: /==+$|--+$/ } }, { pattern: /(^\\s*)#.+/m, lookbehind: true, alias: \"important\", inside: { punctuation: /^#+|#+$/ } }], hr: { pattern: /(^\\s*)([*-])(?:[\\t ]*\\2){2,}(?=\\s*$)/m, lookbehind: true, alias: \"punctuation\" }, list: { pattern: /(^\\s*)(?:[*+-]|\\d+\\.)(?=[\\t ].)/m, lookbehind: true, alias: \"punctuation\" }, \"url-reference\": { pattern: /!?\\[[^\\]]+\\]:[\\t ]+(?:\\S+|<(?:\\\\.|[^>\\\\])+>)(?:[\\t ]+(?:\"(?:\\\\.|[^\"\\\\])*\"|'(?:\\\\.|[^'\\\\])*'|\\((?:\\\\.|[^)\\\\])*\\)))?/, inside: { variable: { pattern: /^(!?\\[)[^\\]]+/, lookbehind: true }, string: /(?:\"(?:\\\\.|[^\"\\\\])*\"|'(?:\\\\.|[^'\\\\])*'|\\((?:\\\\.|[^)\\\\])*\\))$/, punctuation: /^[\\[\\]!:]|[<>]/ }, alias: \"url\" }, bold: { pattern: e(/\\b__(?:(?!_)<inner>|_(?:(?!_)<inner>)+_)+__\\b|\\*\\*(?:(?!\\*)<inner>|\\*(?:(?!\\*)<inner>)+\\*)+\\*\\*/.source), lookbehind: true, greedy: true, inside: { content: { pattern: /(^..)[\\s\\S]+(?=..$)/, lookbehind: true, inside: {} }, punctuation: /\\*\\*|__/ } }, italic: { pattern: e(/\\b_(?:(?!_)<inner>|__(?:(?!_)<inner>)+__)+_\\b|\\*(?:(?!\\*)<inner>|\\*\\*(?:(?!\\*)<inner>)+\\*\\*)+\\*/.source), lookbehind: true, greedy: true, inside: { content: { pattern: /(^.)[\\s\\S]+(?=.$)/, lookbehind: true, inside: {} }, punctuation: /[*_]/ } }, strike: { pattern: e(/(~~?)(?:(?!~)<inner>)+\\2/.source), lookbehind: true, greedy: true, inside: { content: { pattern: /(^~~?)[\\s\\S]+(?=\\1$)/, lookbehind: true, inside: {} }, punctuation: /~~?/ } }, \"code-snippet\": { pattern: /(^|[^\\\\`])(?:``[^`\\r\\n]+(?:`[^`\\r\\n]+)*``(?!`)|`[^`\\r\\n]+`(?!`))/, lookbehind: true, greedy: true, alias: [\"code\", \"keyword\"] }, url: { pattern: e(/!?\\[(?:(?!\\])<inner>)+\\](?:\\([^\\s)]+(?:[\\t ]+\"(?:\\\\.|[^\"\\\\])*\")?\\)|[ \\t]?\\[(?:(?!\\])<inner>)+\\])/.source), lookbehind: true, greedy: true, inside: { operator: /^!/, content: { pattern: /(^\\[)[^\\]]+(?=\\])/, lookbehind: true, inside: {} }, variable: { pattern: /(^\\][ \\t]?\\[)[^\\]]+(?=\\]$)/, lookbehind: true }, url: { pattern: /(^\\]\\()[^\\s)]+/, lookbehind: true }, string: { pattern: /(^[ \\t]+)\"(?:\\\\.|[^\"\\\\])*\"(?=\\)$)/, lookbehind: true } } } }), [\"url\", \"bold\", \"italic\", \"strike\"].forEach(function(n2) {\n [\"url\", \"bold\", \"italic\", \"strike\", \"code-snippet\"].forEach(function(e2) {\n n2 !== e2 && (o.languages.markdown[n2].inside.content.inside[e2] = o.languages.markdown[e2]);\n });\n }), o.hooks.add(\"after-tokenize\", function(e2) {\n \"markdown\" !== e2.language && \"md\" !== e2.language || !function e3(n2) {\n if (n2 && \"string\" != typeof n2)\n for (var t2 = 0, a2 = n2.length; t2 < a2; t2++) {\n var r2, s = n2[t2];\n \"code\" !== s.type ? e3(s.content) : (r2 = s.content[1], s = s.content[3], r2 && s && \"code-language\" === r2.type && \"code-block\" === s.type && \"string\" == typeof r2.content && (r2 = r2.content.replace(/\\b#/g, \"sharp\").replace(/\\b\\+\\+/g, \"pp\"), r2 = \"language-\" + (r2 = (/[a-z][\\w-]*/i.exec(r2) || [\"\"])[0].toLowerCase()), s.alias ? \"string\" == typeof s.alias ? s.alias = [s.alias, r2] : s.alias.push(r2) : s.alias = [r2]));\n }\n }(e2.tokens);\n }), o.hooks.add(\"wrap\", function(e2) {\n if (\"code-block\" === e2.type) {\n for (var n2 = \"\", t2 = 0, a2 = e2.classes.length; t2 < a2; t2++) {\n var r2 = e2.classes[t2], r2 = /language-(.+)/.exec(r2);\n if (r2) {\n n2 = r2[1];\n break;\n }\n }\n var s, i = o.languages[n2];\n i ? e2.content = o.highlight(function(e3) {\n e3 = e3.replace(l, \"\");\n return e3 = e3.replace(/&(\\w{1,8}|#x?[\\da-f]{1,8});/gi, function(e4, n3) {\n var t3;\n return \"#\" === (n3 = n3.toLowerCase())[0] ? (t3 = \"x\" === n3[1] ? parseInt(n3.slice(2), 16) : Number(n3.slice(1)), c(t3)) : u[n3] || e4;\n });\n }(e2.content), i, n2) : n2 && \"none\" !== n2 && o.plugins.autoloader && (s = \"md-\" + (/* @__PURE__ */ new Date()).valueOf() + \"-\" + Math.floor(1e16 * Math.random()), e2.attributes.id = s, o.plugins.autoloader.loadLanguages(n2, function() {\n var e3 = document.getElementById(s);\n e3 && (e3.innerHTML = o.highlight(e3.textContent, o.languages[n2], n2));\n }));\n }\n }), RegExp(o.languages.markup.tag.pattern.source, \"gi\")), u = { amp: \"&\", lt: \"<\", gt: \">\", quot: '\"' }, c = String.fromCodePoint || String.fromCharCode;\n o.languages.md = o.languages.markdown;\n}(Prism), Prism.languages.graphql = { comment: /#.*/, description: { pattern: /(?:\"\"\"(?:[^\"]|(?!\"\"\")\")*\"\"\"|\"(?:\\\\.|[^\\\\\"\\r\\n])*\")(?=\\s*[a-z_])/i, greedy: true, alias: \"string\", inside: { \"language-markdown\": { pattern: /(^\"(?:\"\")?)(?!\\1)[\\s\\S]+(?=\\1$)/, lookbehind: true, inside: Prism.languages.markdown } } }, string: { pattern: /\"\"\"(?:[^\"]|(?!\"\"\")\")*\"\"\"|\"(?:\\\\.|[^\\\\\"\\r\\n])*\"/, greedy: true }, number: /(?:\\B-|\\b)\\d+(?:\\.\\d+)?(?:e[+-]?\\d+)?\\b/i, boolean: /\\b(?:false|true)\\b/, variable: /\\$[a-z_]\\w*/i, directive: { pattern: /@[a-z_]\\w*/i, alias: \"function\" }, \"attr-name\": { pattern: /\\b[a-z_]\\w*(?=\\s*(?:\\((?:[^()\"]|\"(?:\\\\.|[^\\\\\"\\r\\n])*\")*\\))?:)/i, greedy: true }, \"atom-input\": { pattern: /\\b[A-Z]\\w*Input\\b/, alias: \"class-name\" }, scalar: /\\b(?:Boolean|Float|ID|Int|String)\\b/, constant: /\\b[A-Z][A-Z_\\d]*\\b/, \"class-name\": { pattern: /(\\b(?:enum|implements|interface|on|scalar|type|union)\\s+|&\\s*|:\\s*|\\[)[A-Z_]\\w*/, lookbehind: true }, fragment: { pattern: /(\\bfragment\\s+|\\.{3}\\s*(?!on\\b))[a-zA-Z_]\\w*/, lookbehind: true, alias: \"function\" }, \"definition-mutation\": { pattern: /(\\bmutation\\s+)[a-zA-Z_]\\w*/, lookbehind: true, alias: \"function\" }, \"definition-query\": { pattern: /(\\bquery\\s+)[a-zA-Z_]\\w*/, lookbehind: true, alias: \"function\" }, keyword: /\\b(?:directive|enum|extend|fragment|implements|input|interface|mutation|on|query|repeatable|scalar|schema|subscription|type|union)\\b/, operator: /[!=|&]|\\.{3}/, \"property-query\": /\\w+(?=\\s*\\()/, object: /\\w+(?=\\s*\\{)/, punctuation: /[!(){}\\[\\]:=,]/, property: /\\w+/ }, Prism.hooks.add(\"after-tokenize\", function(e) {\n if (\"graphql\" === e.language)\n for (var i = e.tokens.filter(function(e2) {\n return \"string\" != typeof e2 && \"comment\" !== e2.type && \"scalar\" !== e2.type;\n }), o = 0; o < i.length; ) {\n var n = i[o++];\n if (\"keyword\" === n.type && \"mutation\" === n.content) {\n var t = [];\n if (p([\"definition-mutation\", \"punctuation\"]) && \"(\" === c(1).content) {\n o += 2;\n var a = d(/^\\($/, /^\\)$/);\n if (-1 === a)\n continue;\n for (; o < a; o++) {\n var r = c(0);\n \"variable\" === r.type && (g(r, \"variable-input\"), t.push(r.content));\n }\n o = a + 1;\n }\n if (p([\"punctuation\", \"property-query\"]) && \"{\" === c(0).content && (o++, g(c(0), \"property-mutation\"), 0 < t.length)) {\n var s = d(/^\\{$/, /^\\}$/);\n if (-1 !== s)\n for (var l = o; l < s; l++) {\n var u = i[l];\n \"variable\" === u.type && 0 <= t.indexOf(u.content) && g(u, \"variable-input\");\n }\n }\n }\n }\n function c(e2) {\n return i[o + e2];\n }\n function p(e2, n2) {\n n2 = n2 || 0;\n for (var t2 = 0; t2 < e2.length; t2++) {\n var a2 = c(t2 + n2);\n if (!a2 || a2.type !== e2[t2])\n return;\n }\n return 1;\n }\n function d(e2, n2) {\n for (var t2 = 1, a2 = o; a2 < i.length; a2++) {\n var r2 = i[a2], s2 = r2.content;\n if (\"punctuation\" === r2.type && \"string\" == typeof s2) {\n if (e2.test(s2))\n t2++;\n else if (n2.test(s2) && 0 === --t2)\n return a2;\n }\n }\n return -1;\n }\n function g(e2, n2) {\n var t2 = e2.alias;\n t2 ? Array.isArray(t2) || (e2.alias = t2 = [t2]) : e2.alias = t2 = [], t2.push(n2);\n }\n}), Prism.languages.sql = { comment: { pattern: /(^|[^\\\\])(?:\\/\\*[\\s\\S]*?\\*\\/|(?:--|\\/\\/|#).*)/, lookbehind: true }, variable: [{ pattern: /@([\"'`])(?:\\\\[\\s\\S]|(?!\\1)[^\\\\])+\\1/, greedy: true }, /@[\\w.$]+/], string: { pattern: /(^|[^@\\\\])(\"|')(?:\\\\[\\s\\S]|(?!\\2)[^\\\\]|\\2\\2)*\\2/, greedy: true, lookbehind: true }, identifier: { pattern: /(^|[^@\\\\])`(?:\\\\[\\s\\S]|[^`\\\\]|``)*`/, greedy: true, lookbehind: true, inside: { punctuation: /^`|`$/ } }, function: /\\b(?:AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE)(?=\\s*\\()/i, keyword: /\\b(?:ACTION|ADD|AFTER|ALGORITHM|ALL|ALTER|ANALYZE|ANY|APPLY|AS|ASC|AUTHORIZATION|AUTO_INCREMENT|BACKUP|BDB|BEGIN|BERKELEYDB|BIGINT|BINARY|BIT|BLOB|BOOL|BOOLEAN|BREAK|BROWSE|BTREE|BULK|BY|CALL|CASCADED?|CASE|CHAIN|CHAR(?:ACTER|SET)?|CHECK(?:POINT)?|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMNS?|COMMENT|COMMIT(?:TED)?|COMPUTE|CONNECT|CONSISTENT|CONSTRAINT|CONTAINS(?:TABLE)?|CONTINUE|CONVERT|CREATE|CROSS|CURRENT(?:_DATE|_TIME|_TIMESTAMP|_USER)?|CURSOR|CYCLE|DATA(?:BASES?)?|DATE(?:TIME)?|DAY|DBCC|DEALLOCATE|DEC|DECIMAL|DECLARE|DEFAULT|DEFINER|DELAYED|DELETE|DELIMITERS?|DENY|DESC|DESCRIBE|DETERMINISTIC|DISABLE|DISCARD|DISK|DISTINCT|DISTINCTROW|DISTRIBUTED|DO|DOUBLE|DROP|DUMMY|DUMP(?:FILE)?|DUPLICATE|ELSE(?:IF)?|ENABLE|ENCLOSED|END|ENGINE|ENUM|ERRLVL|ERRORS|ESCAPED?|EXCEPT|EXEC(?:UTE)?|EXISTS|EXIT|EXPLAIN|EXTENDED|FETCH|FIELDS|FILE|FILLFACTOR|FIRST|FIXED|FLOAT|FOLLOWING|FOR(?: EACH ROW)?|FORCE|FOREIGN|FREETEXT(?:TABLE)?|FROM|FULL|FUNCTION|GEOMETRY(?:COLLECTION)?|GLOBAL|GOTO|GRANT|GROUP|HANDLER|HASH|HAVING|HOLDLOCK|HOUR|IDENTITY(?:COL|_INSERT)?|IF|IGNORE|IMPORT|INDEX|INFILE|INNER|INNODB|INOUT|INSERT|INT|INTEGER|INTERSECT|INTERVAL|INTO|INVOKER|ISOLATION|ITERATE|JOIN|KEYS?|KILL|LANGUAGE|LAST|LEAVE|LEFT|LEVEL|LIMIT|LINENO|LINES|LINESTRING|LOAD|LOCAL|LOCK|LONG(?:BLOB|TEXT)|LOOP|MATCH(?:ED)?|MEDIUM(?:BLOB|INT|TEXT)|MERGE|MIDDLEINT|MINUTE|MODE|MODIFIES|MODIFY|MONTH|MULTI(?:LINESTRING|POINT|POLYGON)|NATIONAL|NATURAL|NCHAR|NEXT|NO|NONCLUSTERED|NULLIF|NUMERIC|OFF?|OFFSETS?|ON|OPEN(?:DATASOURCE|QUERY|ROWSET)?|OPTIMIZE|OPTION(?:ALLY)?|ORDER|OUT(?:ER|FILE)?|OVER|PARTIAL|PARTITION|PERCENT|PIVOT|PLAN|POINT|POLYGON|PRECEDING|PRECISION|PREPARE|PREV|PRIMARY|PRINT|PRIVILEGES|PROC(?:EDURE)?|PUBLIC|PURGE|QUICK|RAISERROR|READS?|REAL|RECONFIGURE|REFERENCES|RELEASE|RENAME|REPEAT(?:ABLE)?|REPLACE|REPLICATION|REQUIRE|RESIGNAL|RESTORE|RESTRICT|RETURN(?:ING|S)?|REVOKE|RIGHT|ROLLBACK|ROUTINE|ROW(?:COUNT|GUIDCOL|S)?|RTREE|RULE|SAVE(?:POINT)?|SCHEMA|SECOND|SELECT|SERIAL(?:IZABLE)?|SESSION(?:_USER)?|SET(?:USER)?|SHARE|SHOW|SHUTDOWN|SIMPLE|SMALLINT|SNAPSHOT|SOME|SONAME|SQL|START(?:ING)?|STATISTICS|STATUS|STRIPED|SYSTEM_USER|TABLES?|TABLESPACE|TEMP(?:ORARY|TABLE)?|TERMINATED|TEXT(?:SIZE)?|THEN|TIME(?:STAMP)?|TINY(?:BLOB|INT|TEXT)|TOP?|TRAN(?:SACTIONS?)?|TRIGGER|TRUNCATE|TSEQUAL|TYPES?|UNBOUNDED|UNCOMMITTED|UNDEFINED|UNION|UNIQUE|UNLOCK|UNPIVOT|UNSIGNED|UPDATE(?:TEXT)?|USAGE|USE|USER|USING|VALUES?|VAR(?:BINARY|CHAR|CHARACTER|YING)|VIEW|WAITFOR|WARNINGS|WHEN|WHERE|WHILE|WITH(?: ROLLUP|IN)?|WORK|WRITE(?:TEXT)?|YEAR)\\b/i, boolean: /\\b(?:FALSE|NULL|TRUE)\\b/i, number: /\\b0x[\\da-f]+\\b|\\b\\d+(?:\\.\\d*)?|\\B\\.\\d+\\b/i, operator: /[-+*\\/=%^~]|&&?|\\|\\|?|!=?|<(?:=>?|<|>)?|>[>=]?|\\b(?:AND|BETWEEN|DIV|ILIKE|IN|IS|LIKE|NOT|OR|REGEXP|RLIKE|SOUNDS LIKE|XOR)\\b/i, punctuation: /[;[\\]()`,.]/ }, function(b) {\n var e = b.languages.javascript[\"template-string\"], t = e.pattern.source, m = e.inside.interpolation, f = m.inside[\"interpolation-punctuation\"], s = m.pattern.source;\n function n(e2, n2) {\n if (b.languages[e2])\n return { pattern: RegExp(\"((?:\" + n2 + \")\\\\s*)\" + t), lookbehind: true, greedy: true, inside: { \"template-punctuation\": { pattern: /^`|`$/, alias: \"string\" }, \"embedded-code\": { pattern: /[\\s\\S]+/, alias: e2 } } };\n }\n function h(e2, n2, t2) {\n e2 = { code: e2, grammar: n2, language: t2 };\n return b.hooks.run(\"before-tokenize\", e2), e2.tokens = b.tokenize(e2.code, e2.grammar), b.hooks.run(\"after-tokenize\", e2), e2.tokens;\n }\n function l(a2, e2, r) {\n var n2 = b.tokenize(a2, { interpolation: { pattern: RegExp(s), lookbehind: true } }), p = 0, d = {}, n2 = h(n2.map(function(e3) {\n if (\"string\" == typeof e3)\n return e3;\n for (var n3, t2, e3 = e3.content; -1 !== a2.indexOf((t2 = p++, n3 = \"___\" + r.toUpperCase() + \"_\" + t2 + \"___\")); )\n ;\n return d[n3] = e3, n3;\n }).join(\"\"), e2, r), g = Object.keys(d);\n return p = 0, function e3(n3) {\n for (var t2 = 0; t2 < n3.length; t2++) {\n if (p >= g.length)\n return;\n var a3, r2, s2, i, o, l2, u2, c = n3[t2];\n \"string\" == typeof c || \"string\" == typeof c.content ? (a3 = g[p], -1 !== (u2 = (l2 = \"string\" == typeof c ? c : c.content).indexOf(a3)) && (++p, r2 = l2.substring(0, u2), o = d[a3], s2 = void 0, (i = {})[\"interpolation-punctuation\"] = f, 3 === (i = b.tokenize(o, i)).length && ((s2 = [1, 1]).push.apply(s2, h(i[1], b.languages.javascript, \"javascript\")), i.splice.apply(i, s2)), s2 = new b.Token(\"interpolation\", i, m.alias, o), i = l2.substring(u2 + a3.length), o = [], r2 && o.push(r2), o.push(s2), i && (e3(l2 = [i]), o.push.apply(o, l2)), \"string\" == typeof c ? (n3.splice.apply(n3, [t2, 1].concat(o)), t2 += o.length - 1) : c.content = o)) : (u2 = c.content, Array.isArray(u2) ? e3(u2) : e3([u2]));\n }\n }(n2), new b.Token(r, n2, \"language-\" + r, a2);\n }\n b.languages.javascript[\"template-string\"] = [n(\"css\", /\\b(?:styled(?:\\([^)]*\\))?(?:\\s*\\.\\s*\\w+(?:\\([^)]*\\))*)*|css(?:\\s*\\.\\s*(?:global|resolve))?|createGlobalStyle|keyframes)/.source), n(\"html\", /\\bhtml|\\.\\s*(?:inner|outer)HTML\\s*\\+?=/.source), n(\"svg\", /\\bsvg/.source), n(\"markdown\", /\\b(?:markdown|md)/.source), n(\"graphql\", /\\b(?:gql|graphql(?:\\s*\\.\\s*experimental)?)/.source), n(\"sql\", /\\bsql/.source), e].filter(Boolean);\n var a = { javascript: true, js: true, typescript: true, ts: true, jsx: true, tsx: true };\n function u(e2) {\n return \"string\" == typeof e2 ? e2 : Array.isArray(e2) ? e2.map(u).join(\"\") : u(e2.content);\n }\n b.hooks.add(\"after-tokenize\", function(e2) {\n e2.language in a && !function e3(n2) {\n for (var t2 = 0, a2 = n2.length; t2 < a2; t2++) {\n var r, s2, i, o = n2[t2];\n \"string\" != typeof o && (r = o.content, Array.isArray(r) ? \"template-string\" === o.type ? (o = r[1], 3 === r.length && \"string\" != typeof o && \"embedded-code\" === o.type && (s2 = u(o), o = o.alias, o = Array.isArray(o) ? o[0] : o, i = b.languages[o]) && (r[1] = l(s2, i, o))) : e3(r) : \"string\" != typeof r && e3([r]));\n }\n }(e2.tokens);\n });\n}(Prism), function(e) {\n e.languages.typescript = e.languages.extend(\"javascript\", { \"class-name\": { pattern: /(\\b(?:class|extends|implements|instanceof|interface|new|type)\\s+)(?!keyof\\b)(?!\\s)[_$a-zA-Z\\xA0-\\uFFFF](?:(?!\\s)[$\\w\\xA0-\\uFFFF])*(?:\\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>)?/, lookbehind: true, greedy: true, inside: null }, builtin: /\\b(?:Array|Function|Promise|any|boolean|console|never|number|string|symbol|unknown)\\b/ }), e.languages.typescript.keyword.push(/\\b(?:abstract|declare|is|keyof|readonly|require)\\b/, /\\b(?:asserts|infer|interface|module|namespace|type)\\b(?=\\s*(?:[{_$a-zA-Z\\xA0-\\uFFFF]|$))/, /\\btype\\b(?=\\s*(?:[\\{*]|$))/), delete e.languages.typescript.parameter, delete e.languages.typescript[\"literal-property\"];\n var n = e.languages.extend(\"typescript\", {});\n delete n[\"class-name\"], e.languages.typescript[\"class-name\"].inside = n, e.languages.insertBefore(\"typescript\", \"function\", { decorator: { pattern: /@[$\\w\\xA0-\\uFFFF]+/, inside: { at: { pattern: /^@/, alias: \"operator\" }, function: /^[\\s\\S]+/ } }, \"generic-function\": { pattern: /#?(?!\\s)[_$a-zA-Z\\xA0-\\uFFFF](?:(?!\\s)[$\\w\\xA0-\\uFFFF])*\\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>(?=\\s*\\()/, greedy: true, inside: { function: /^#?(?!\\s)[_$a-zA-Z\\xA0-\\uFFFF](?:(?!\\s)[$\\w\\xA0-\\uFFFF])*/, generic: { pattern: /<[\\s\\S]+/, alias: \"class-name\", inside: n } } } }), e.languages.ts = e.languages.typescript;\n}(Prism), function(e) {\n var n = e.languages.javascript, t = /\\{(?:[^{}]|\\{(?:[^{}]|\\{[^{}]*\\})*\\})+\\}/.source, a = \"(@(?:arg|argument|param|property)\\\\s+(?:\" + t + \"\\\\s+)?)\";\n e.languages.jsdoc = e.languages.extend(\"javadoclike\", { parameter: { pattern: RegExp(a + /(?:(?!\\s)[$\\w\\xA0-\\uFFFF.])+(?=\\s|$)/.source), lookbehind: true, inside: { punctuation: /\\./ } } }), e.languages.insertBefore(\"jsdoc\", \"keyword\", { \"optional-parameter\": { pattern: RegExp(a + /\\[(?:(?!\\s)[$\\w\\xA0-\\uFFFF.])+(?:=[^[\\]]+)?\\](?=\\s|$)/.source), lookbehind: true, inside: { parameter: { pattern: /(^\\[)[$\\w\\xA0-\\uFFFF\\.]+/, lookbehind: true, inside: { punctuation: /\\./ } }, code: { pattern: /(=)[\\s\\S]*(?=\\]$)/, lookbehind: true, inside: n, alias: \"language-javascript\" }, punctuation: /[=[\\]]/ } }, \"class-name\": [{ pattern: RegExp(/(@(?:augments|class|extends|interface|memberof!?|template|this|typedef)\\s+(?:<TYPE>\\s+)?)[A-Z]\\w*(?:\\.[A-Z]\\w*)*/.source.replace(/<TYPE>/g, function() {\n return t;\n })), lookbehind: true, inside: { punctuation: /\\./ } }, { pattern: RegExp(\"(@[a-z]+\\\\s+)\" + t), lookbehind: true, inside: { string: n.string, number: n.number, boolean: n.boolean, keyword: e.languages.typescript.keyword, operator: /=>|\\.\\.\\.|[&|?:*]/, punctuation: /[.,;=<>{}()[\\]]/ } }], example: { pattern: /(@example\\s+(?!\\s))(?:[^@\\s]|\\s+(?!\\s))+?(?=\\s*(?:\\*\\s*)?(?:@\\w|\\*\\/))/, lookbehind: true, inside: { code: { pattern: /^([\\t ]*(?:\\*\\s*)?)\\S.*$/m, lookbehind: true, inside: n, alias: \"language-javascript\" } } } }), e.languages.javadoclike.addSupport(\"javascript\", e.languages.jsdoc);\n}(Prism), function(e) {\n e.languages.flow = e.languages.extend(\"javascript\", {}), e.languages.insertBefore(\"flow\", \"keyword\", { type: [{ pattern: /\\b(?:[Bb]oolean|Function|[Nn]umber|[Ss]tring|[Ss]ymbol|any|mixed|null|void)\\b/, alias: \"class-name\" }] }), e.languages.flow[\"function-variable\"].pattern = /(?!\\s)[_$a-z\\xA0-\\uFFFF](?:(?!\\s)[$\\w\\xA0-\\uFFFF])*(?=\\s*=\\s*(?:function\\b|(?:\\([^()]*\\)(?:\\s*:\\s*\\w+)?|(?!\\s)[_$a-z\\xA0-\\uFFFF](?:(?!\\s)[$\\w\\xA0-\\uFFFF])*)\\s*=>))/i, delete e.languages.flow.parameter, e.languages.insertBefore(\"flow\", \"operator\", { \"flow-punctuation\": { pattern: /\\{\\||\\|\\}/, alias: \"punctuation\" } }), Array.isArray(e.languages.flow.keyword) || (e.languages.flow.keyword = [e.languages.flow.keyword]), e.languages.flow.keyword.unshift({ pattern: /(^|[^$]\\b)(?:Class|declare|opaque|type)\\b(?!\\$)/, lookbehind: true }, { pattern: /(^|[^$]\\B)\\$(?:Diff|Enum|Exact|Keys|ObjMap|PropertyType|Record|Shape|Subtype|Supertype|await)\\b(?!\\$)/, lookbehind: true });\n}(Prism), Prism.languages.n4js = Prism.languages.extend(\"javascript\", { keyword: /\\b(?:Array|any|boolean|break|case|catch|class|const|constructor|continue|debugger|declare|default|delete|do|else|enum|export|extends|false|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|module|new|null|number|package|private|protected|public|return|set|static|string|super|switch|this|throw|true|try|typeof|var|void|while|with|yield)\\b/ }), Prism.languages.insertBefore(\"n4js\", \"constant\", { annotation: { pattern: /@+\\w+/, alias: \"operator\" } }), Prism.languages.n4jsd = Prism.languages.n4js, function(e) {\n function n(e2, n2) {\n return RegExp(e2.replace(/<ID>/g, function() {\n return /(?!\\s)[_$a-zA-Z\\xA0-\\uFFFF](?:(?!\\s)[$\\w\\xA0-\\uFFFF])*/.source;\n }), n2);\n }\n e.languages.insertBefore(\"javascript\", \"function-variable\", { \"method-variable\": { pattern: RegExp(\"(\\\\.\\\\s*)\" + e.languages.javascript[\"function-variable\"].pattern.source), lookbehind: true, alias: [\"function-variable\", \"method\", \"function\", \"property-access\"] } }), e.languages.insertBefore(\"javascript\", \"function\", { method: { pattern: RegExp(\"(\\\\.\\\\s*)\" + e.languages.javascript.function.source), lookbehind: true, alias: [\"function\", \"property-access\"] } }), e.languages.insertBefore(\"javascript\", \"constant\", { \"known-class-name\": [{ pattern: /\\b(?:(?:Float(?:32|64)|(?:Int|Uint)(?:8|16|32)|Uint8Clamped)?Array|ArrayBuffer|BigInt|Boolean|DataView|Date|Error|Function|Intl|JSON|(?:Weak)?(?:Map|Set)|Math|Number|Object|Promise|Proxy|Reflect|RegExp|String|Symbol|WebAssembly)\\b/, alias: \"class-name\" }, { pattern: /\\b(?:[A-Z]\\w*)Error\\b/, alias: \"class-name\" }] }), e.languages.insertBefore(\"javascript\", \"keyword\", { imports: { pattern: n(/(\\bimport\\b\\s*)(?:<ID>(?:\\s*,\\s*(?:\\*\\s*as\\s+<ID>|\\{[^{}]*\\}))?|\\*\\s*as\\s+<ID>|\\{[^{}]*\\})(?=\\s*\\bfrom\\b)/.source), lookbehind: true, inside: e.languages.javascript }, exports: { pattern: n(/(\\bexport\\b\\s*)(?:\\*(?:\\s*as\\s+<ID>)?(?=\\s*\\bfrom\\b)|\\{[^{}]*\\})/.source), lookbehind: true, inside: e.languages.javascript } }), e.languages.javascript.keyword.unshift({ pattern: /\\b(?:as|default|export|from|import)\\b/, alias: \"module\" }, { pattern: /\\b(?:await|break|catch|continue|do|else|finally|for|if|return|switch|throw|try|while|yield)\\b/, alias: \"control-flow\" }, { pattern: /\\bnull\\b/, alias: [\"null\", \"nil\"] }, { pattern: /\\bundefined\\b/, alias: \"nil\" }), e.languages.insertBefore(\"javascript\", \"operator\", { spread: { pattern: /\\.{3}/, alias: \"operator\" }, arrow: { pattern: /=>/, alias: \"operator\" } }), e.languages.insertBefore(\"javascript\", \"punctuation\", { \"property-access\": { pattern: n(/(\\.\\s*)#?<ID>/.source), lookbehind: true }, \"maybe-class-name\": { pattern: /(^|[^$\\w\\xA0-\\uFFFF])[A-Z][$\\w\\xA0-\\uFFFF]+/, lookbehind: true }, dom: { pattern: /\\b(?:document|(?:local|session)Storage|location|navigator|performance|window)\\b/, alias: \"variable\" }, console: { pattern: /\\bconsole(?=\\s*\\.)/, alias: \"class-name\" } });\n for (var t = [\"function\", \"function-variable\", \"method\", \"method-variable\", \"property-access\"], a = 0; a < t.length; a++) {\n var r = t[a], s = e.languages.javascript[r], r = (s = \"RegExp\" === e.util.type(s) ? e.languages.javascript[r] = { pattern: s } : s).inside || {};\n (s.inside = r)[\"maybe-class-name\"] = /^[A-Z][\\s\\S]*/;\n }\n}(Prism), function(s) {\n var e = s.util.clone(s.languages.javascript), t = /(?:\\s|\\/\\/.*(?!.)|\\/\\*(?:[^*]|\\*(?!\\/))\\*\\/)/.source, a = /(?:\\{(?:\\{(?:\\{[^{}]*\\}|[^{}])*\\}|[^{}])*\\})/.source, r = /(?:\\{<S>*\\.{3}(?:[^{}]|<BRACES>)*\\})/.source;\n function n(e2, n2) {\n return e2 = e2.replace(/<S>/g, function() {\n return t;\n }).replace(/<BRACES>/g, function() {\n return a;\n }).replace(/<SPREAD>/g, function() {\n return r;\n }), RegExp(e2, n2);\n }\n r = n(r).source, s.languages.jsx = s.languages.extend(\"markup\", e), s.languages.jsx.tag.pattern = n(/<\\/?(?:[\\w.:-]+(?:<S>+(?:[\\w.:$-]+(?:=(?:\"(?:\\\\[\\s\\S]|[^\\\\\"])*\"|'(?:\\\\[\\s\\S]|[^\\\\'])*'|[^\\s{'\"/>=]+|<BRACES>))?|<SPREAD>))*<S>*\\/?)?>/.source), s.languages.jsx.tag.inside.tag.pattern = /^<\\/?[^\\s>\\/]*/, s.languages.jsx.tag.inside[\"attr-value\"].pattern = /=(?!\\{)(?:\"(?:\\\\[\\s\\S]|[^\\\\\"])*\"|'(?:\\\\[\\s\\S]|[^\\\\'])*'|[^\\s'\">]+)/, s.languages.jsx.tag.inside.tag.inside[\"class-name\"] = /^[A-Z]\\w*(?:\\.[A-Z]\\w*)*$/, s.languages.jsx.tag.inside.comment = e.comment, s.languages.insertBefore(\"inside\", \"attr-name\", { spread: { pattern: n(/<SPREAD>/.source), inside: s.languages.jsx } }, s.languages.jsx.tag), s.languages.insertBefore(\"inside\", \"special-attr\", { script: { pattern: n(/=<BRACES>/.source), alias: \"language-javascript\", inside: { \"script-punctuation\": { pattern: /^=(?=\\{)/, alias: \"punctuation\" }, rest: s.languages.jsx } } }, s.languages.jsx.tag);\n function i(e2) {\n for (var n2 = [], t2 = 0; t2 < e2.length; t2++) {\n var a2 = e2[t2], r2 = false;\n \"string\" != typeof a2 && (\"tag\" === a2.type && a2.content[0] && \"tag\" === a2.content[0].type ? \"</\" === a2.content[0].content[0].content ? 0 < n2.length && n2[n2.length - 1].tagName === o(a2.content[0].content[1]) && n2.pop() : \"/>\" !== a2.content[a2.content.length - 1].content && n2.push({ tagName: o(a2.content[0].content[1]), openedBraces: 0 }) : 0 < n2.length && \"punctuation\" === a2.type && \"{\" === a2.content ? n2[n2.length - 1].openedBraces++ : 0 < n2.length && 0 < n2[n2.length - 1].openedBraces && \"punctuation\" === a2.type && \"}\" === a2.content ? n2[n2.length - 1].openedBraces-- : r2 = true), (r2 || \"string\" == typeof a2) && 0 < n2.length && 0 === n2[n2.length - 1].openedBraces && (r2 = o(a2), t2 < e2.length - 1 && (\"string\" == typeof e2[t2 + 1] || \"plain-text\" === e2[t2 + 1].type) && (r2 += o(e2[t2 + 1]), e2.splice(t2 + 1, 1)), 0 < t2 && (\"string\" == typeof e2[t2 - 1] || \"plain-text\" === e2[t2 - 1].type) && (r2 = o(e2[t2 - 1]) + r2, e2.splice(t2 - 1, 1), t2--), e2[t2] = new s.Token(\"plain-text\", r2, null, r2)), a2.content && \"string\" != typeof a2.content && i(a2.content);\n }\n }\n var o = function(e2) {\n return e2 ? \"string\" == typeof e2 ? e2 : \"string\" == typeof e2.content ? e2.content : e2.content.map(o).join(\"\") : \"\";\n };\n s.hooks.add(\"after-tokenize\", function(e2) {\n \"jsx\" !== e2.language && \"tsx\" !== e2.language || i(e2.tokens);\n });\n}(Prism), function(e) {\n var n = e.util.clone(e.languages.typescript), n = (e.languages.tsx = e.languages.extend(\"jsx\", n), delete e.languages.tsx.parameter, delete e.languages.tsx[\"literal-property\"], e.languages.tsx.tag);\n n.pattern = RegExp(/(^|[^\\w$]|(?=<\\/))/.source + \"(?:\" + n.pattern.source + \")\", n.pattern.flags), n.lookbehind = true;\n}(Prism), Prism.languages.swift = { comment: { pattern: /(^|[^\\\\:])(?:\\/\\/.*|\\/\\*(?:[^/*]|\\/(?!\\*)|\\*(?!\\/)|\\/\\*(?:[^*]|\\*(?!\\/))*\\*\\/)*\\*\\/)/, lookbehind: true, greedy: true }, \"string-literal\": [{ pattern: RegExp(/(^|[^\"#])/.source + \"(?:\" + /\"(?:\\\\(?:\\((?:[^()]|\\([^()]*\\))*\\)|\\r\\n|[^(])|[^\\\\\\r\\n\"])*\"/.source + \"|\" + /\"\"\"(?:\\\\(?:\\((?:[^()]|\\([^()]*\\))*\\)|[^(])|[^\\\\\"]|\"(?!\"\"))*\"\"\"/.source + \")\" + /(?![\"#])/.source), lookbehind: true, greedy: true, inside: { interpolation: { pattern: /(\\\\\\()(?:[^()]|\\([^()]*\\))*(?=\\))/, lookbehind: true, inside: null }, \"interpolation-punctuation\": { pattern: /^\\)|\\\\\\($/, alias: \"punctuation\" }, punctuation: /\\\\(?=[\\r\\n])/, string: /[\\s\\S]+/ } }, { pattern: RegExp(/(^|[^\"#])(#+)/.source + \"(?:\" + /\"(?:\\\\(?:#+\\((?:[^()]|\\([^()]*\\))*\\)|\\r\\n|[^#])|[^\\\\\\r\\n])*?\"/.source + \"|\" + /\"\"\"(?:\\\\(?:#+\\((?:[^()]|\\([^()]*\\))*\\)|[^#])|[^\\\\])*?\"\"\"/.source + \")\\\\2\"), lookbehind: true, greedy: true, inside: { interpolation: { pattern: /(\\\\#+\\()(?:[^()]|\\([^()]*\\))*(?=\\))/, lookbehind: true, inside: null }, \"interpolation-punctuation\": { pattern: /^\\)|\\\\#+\\($/, alias: \"punctuation\" }, string: /[\\s\\S]+/ } }], directive: { pattern: RegExp(/#/.source + \"(?:\" + /(?:elseif|if)\\b/.source + \"(?:[ \t]*\" + /(?:![ \\t]*)?(?:\\b\\w+\\b(?:[ \\t]*\\((?:[^()]|\\([^()]*\\))*\\))?|\\((?:[^()]|\\([^()]*\\))*\\))(?:[ \\t]*(?:&&|\\|\\|))?/.source + \")+|\" + /(?:else|endif)\\b/.source + \")\"), alias: \"property\", inside: { \"directive-name\": /^#\\w+/, boolean: /\\b(?:false|true)\\b/, number: /\\b\\d+(?:\\.\\d+)*\\b/, operator: /!|&&|\\|\\||[<>]=?/, punctuation: /[(),]/ } }, literal: { pattern: /#(?:colorLiteral|column|dsohandle|file(?:ID|Literal|Path)?|function|imageLiteral|line)\\b/, alias: \"constant\" }, \"other-directive\": { pattern: /#\\w+\\b/, alias: \"property\" }, attribute: { pattern: /@\\w+/, alias: \"atrule\" }, \"function-definition\": { pattern: /(\\bfunc\\s+)\\w+/, lookbehind: true, alias: \"function\" }, label: { pattern: /\\b(break|continue)\\s+\\w+|\\b[a-zA-Z_]\\w*(?=\\s*:\\s*(?:for|repeat|while)\\b)/, lookbehind: true, alias: \"important\" }, keyword: /\\b(?:Any|Protocol|Self|Type|actor|as|assignment|associatedtype|associativity|async|await|break|case|catch|class|continue|convenience|default|defer|deinit|didSet|do|dynamic|else|enum|extension|fallthrough|fileprivate|final|for|func|get|guard|higherThan|if|import|in|indirect|infix|init|inout|internal|is|isolated|lazy|left|let|lowerThan|mutating|none|nonisolated|nonmutating|open|operator|optional|override|postfix|precedencegroup|prefix|private|protocol|public|repeat|required|rethrows|return|right|safe|self|set|some|static|struct|subscript|super|switch|throw|throws|try|typealias|unowned|unsafe|var|weak|where|while|willSet)\\b/, boolean: /\\b(?:false|true)\\b/, nil: { pattern: /\\bnil\\b/, alias: \"constant\" }, \"short-argument\": /\\$\\d+\\b/, omit: { pattern: /\\b_\\b/, alias: \"keyword\" }, number: /\\b(?:[\\d_]+(?:\\.[\\de_]+)?|0x[a-f0-9_]+(?:\\.[a-f0-9p_]+)?|0b[01_]+|0o[0-7_]+)\\b/i, \"class-name\": /\\b[A-Z](?:[A-Z_\\d]*[a-z]\\w*)?\\b/, function: /\\b[a-z_]\\w*(?=\\s*\\()/i, constant: /\\b(?:[A-Z_]{2,}|k[A-Z][A-Za-z_]+)\\b/, operator: /[-+*/%=!<>&|^~?]+|\\.[.\\-+*/%=!<>&|^~?]+/, punctuation: /[{}[\\]();,.:\\\\]/ }, Prism.languages.swift[\"string-literal\"].forEach(function(e) {\n e.inside.interpolation.inside = Prism.languages.swift;\n}), function(e) {\n e.languages.kotlin = e.languages.extend(\"clike\", { keyword: { pattern: /(^|[^.])\\b(?:abstract|actual|annotation|as|break|by|catch|class|companion|const|constructor|continue|crossinline|data|do|dynamic|else|enum|expect|external|final|finally|for|fun|get|if|import|in|infix|init|inline|inner|interface|internal|is|lateinit|noinline|null|object|open|operator|out|override|package|private|protected|public|reified|return|sealed|set|super|suspend|tailrec|this|throw|to|try|typealias|val|var|vararg|when|where|while)\\b/, lookbehind: true }, function: [{ pattern: /(?:`[^\\r\\n`]+`|\\b\\w+)(?=\\s*\\()/, greedy: true }, { pattern: /(\\.)(?:`[^\\r\\n`]+`|\\w+)(?=\\s*\\{)/, lookbehind: true, greedy: true }], number: /\\b(?:0[xX][\\da-fA-F]+(?:_[\\da-fA-F]+)*|0[bB][01]+(?:_[01]+)*|\\d+(?:_\\d+)*(?:\\.\\d+(?:_\\d+)*)?(?:[eE][+-]?\\d+(?:_\\d+)*)?[fFL]?)\\b/, operator: /\\+[+=]?|-[-=>]?|==?=?|!(?:!|==?)?|[\\/*%<>]=?|[?:]:?|\\.\\.|&&|\\|\\||\\b(?:and|inv|or|shl|shr|ushr|xor)\\b/ }), delete e.languages.kotlin[\"class-name\"];\n var n = { \"interpolation-punctuation\": { pattern: /^\\$\\{?|\\}$/, alias: \"punctuation\" }, expression: { pattern: /[\\s\\S]+/, inside: e.languages.kotlin } };\n e.languages.insertBefore(\"kotlin\", \"string\", { \"string-literal\": [{ pattern: /\"\"\"(?:[^$]|\\$(?:(?!\\{)|\\{[^{}]*\\}))*?\"\"\"/, alias: \"multiline\", inside: { interpolation: { pattern: /\\$(?:[a-z_]\\w*|\\{[^{}]*\\})/i, inside: n }, string: /[\\s\\S]+/ } }, { pattern: /\"(?:[^\"\\\\\\r\\n$]|\\\\.|\\$(?:(?!\\{)|\\{[^{}]*\\}))*\"/, alias: \"singleline\", inside: { interpolation: { pattern: /((?:^|[^\\\\])(?:\\\\{2})*)\\$(?:[a-z_]\\w*|\\{[^{}]*\\})/i, lookbehind: true, inside: n }, string: /[\\s\\S]+/ } }], char: { pattern: /'(?:[^'\\\\\\r\\n]|\\\\(?:.|u[a-fA-F0-9]{0,4}))'/, greedy: true } }), delete e.languages.kotlin.string, e.languages.insertBefore(\"kotlin\", \"keyword\", { annotation: { pattern: /\\B@(?:\\w+:)?(?:[A-Z]\\w*|\\[[^\\]]+\\])/, alias: \"builtin\" } }), e.languages.insertBefore(\"kotlin\", \"function\", { label: { pattern: /\\b\\w+@|@\\w+\\b/, alias: \"symbol\" } }), e.languages.kt = e.languages.kotlin, e.languages.kts = e.languages.kotlin;\n}(Prism), Prism.languages.c = Prism.languages.extend(\"clike\", { comment: { pattern: /\\/\\/(?:[^\\r\\n\\\\]|\\\\(?:\\r\\n?|\\n|(?![\\r\\n])))*|\\/\\*[\\s\\S]*?(?:\\*\\/|$)/, greedy: true }, string: { pattern: /\"(?:\\\\(?:\\r\\n|[\\s\\S])|[^\"\\\\\\r\\n])*\"/, greedy: true }, \"class-name\": { pattern: /(\\b(?:enum|struct)\\s+(?:__attribute__\\s*\\(\\([\\s\\S]*?\\)\\)\\s*)?)\\w+|\\b[a-z]\\w*_t\\b/, lookbehind: true }, keyword: /\\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|__attribute__|asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|inline|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|typeof|union|unsigned|void|volatile|while)\\b/, function: /\\b[a-z_]\\w*(?=\\s*\\()/i, number: /(?:\\b0x(?:[\\da-f]+(?:\\.[\\da-f]*)?|\\.[\\da-f]+)(?:p[+-]?\\d+)?|(?:\\b\\d+(?:\\.\\d*)?|\\B\\.\\d+)(?:e[+-]?\\d+)?)[ful]{0,4}/i, operator: />>=?|<<=?|->|([-+&|:])\\1|[?:~]|[-+*/%&|^!=<>]=?/ }), Prism.languages.insertBefore(\"c\", \"string\", { char: { pattern: /'(?:\\\\(?:\\r\\n|[\\s\\S])|[^'\\\\\\r\\n]){0,32}'/, greedy: true } }), Prism.languages.insertBefore(\"c\", \"string\", { macro: { pattern: /(^[\\t ]*)#\\s*[a-z](?:[^\\r\\n\\\\/]|\\/(?!\\*)|\\/\\*(?:[^*]|\\*(?!\\/))*\\*\\/|\\\\(?:\\r\\n|[\\s\\S]))*/im, lookbehind: true, greedy: true, alias: \"property\", inside: { string: [{ pattern: /^(#\\s*include\\s*)<[^>]+>/, lookbehind: true }, Prism.languages.c.string], char: Prism.languages.c.char, comment: Prism.languages.c.comment, \"macro-name\": [{ pattern: /(^#\\s*define\\s+)\\w+\\b(?!\\()/i, lookbehind: true }, { pattern: /(^#\\s*define\\s+)\\w+\\b(?=\\()/i, lookbehind: true, alias: \"function\" }], directive: { pattern: /^(#\\s*)[a-z]+/, lookbehind: true, alias: \"keyword\" }, \"directive-hash\": /^#/, punctuation: /##|\\\\(?=[\\r\\n])/, expression: { pattern: /\\S[\\s\\S]*/, inside: Prism.languages.c } } } }), Prism.languages.insertBefore(\"c\", \"function\", { constant: /\\b(?:EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|__DATE__|__FILE__|__LINE__|__TIMESTAMP__|__TIME__|__func__|stderr|stdin|stdout)\\b/ }), delete Prism.languages.c.boolean, Prism.languages.objectivec = Prism.languages.extend(\"c\", { string: { pattern: /@?\"(?:\\\\(?:\\r\\n|[\\s\\S])|[^\"\\\\\\r\\n])*\"/, greedy: true }, keyword: /\\b(?:asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|in|inline|int|long|register|return|self|short|signed|sizeof|static|struct|super|switch|typedef|typeof|union|unsigned|void|volatile|while)\\b|(?:@interface|@end|@implementation|@protocol|@class|@public|@protected|@private|@property|@try|@catch|@finally|@throw|@synthesize|@dynamic|@selector)\\b/, operator: /-[->]?|\\+\\+?|!=?|<<?=?|>>?=?|==?|&&?|\\|\\|?|[~^%?*\\/@]/ }), delete Prism.languages.objectivec[\"class-name\"], Prism.languages.objc = Prism.languages.objectivec, Prism.languages.reason = Prism.languages.extend(\"clike\", { string: { pattern: /\"(?:\\\\(?:\\r\\n|[\\s\\S])|[^\\\\\\r\\n\"])*\"/, greedy: true }, \"class-name\": /\\b[A-Z]\\w*/, keyword: /\\b(?:and|as|assert|begin|class|constraint|do|done|downto|else|end|exception|external|for|fun|function|functor|if|in|include|inherit|initializer|lazy|let|method|module|mutable|new|nonrec|object|of|open|or|private|rec|sig|struct|switch|then|to|try|type|val|virtual|when|while|with)\\b/, operator: /\\.{3}|:[:=]|\\|>|->|=(?:==?|>)?|<=?|>=?|[|^?'#!~`]|[+\\-*\\/]\\.?|\\b(?:asr|land|lor|lsl|lsr|lxor|mod)\\b/ }), Prism.languages.insertBefore(\"reason\", \"class-name\", { char: { pattern: /'(?:\\\\x[\\da-f]{2}|\\\\o[0-3][0-7][0-7]|\\\\\\d{3}|\\\\.|[^'\\\\\\r\\n])'/, greedy: true }, constructor: /\\b[A-Z]\\w*\\b(?!\\s*\\.)/, label: { pattern: /\\b[a-z]\\w*(?=::)/, alias: \"symbol\" } }), delete Prism.languages.reason.function, function(e) {\n for (var n = /\\/\\*(?:[^*/]|\\*(?!\\/)|\\/(?!\\*)|<self>)*\\*\\//.source, t = 0; t < 2; t++)\n n = n.replace(/<self>/g, function() {\n return n;\n });\n n = n.replace(/<self>/g, function() {\n return /[^\\s\\S]/.source;\n }), e.languages.rust = { comment: [{ pattern: RegExp(/(^|[^\\\\])/.source + n), lookbehind: true, greedy: true }, { pattern: /(^|[^\\\\:])\\/\\/.*/, lookbehind: true, greedy: true }], string: { pattern: /b?\"(?:\\\\[\\s\\S]|[^\\\\\"])*\"|b?r(#*)\"(?:[^\"]|\"(?!\\1))*\"\\1/, greedy: true }, char: { pattern: /b?'(?:\\\\(?:x[0-7][\\da-fA-F]|u\\{(?:[\\da-fA-F]_*){1,6}\\}|.)|[^\\\\\\r\\n\\t'])'/, greedy: true }, attribute: { pattern: /#!?\\[(?:[^\\[\\]\"]|\"(?:\\\\[\\s\\S]|[^\\\\\"])*\")*\\]/, greedy: true, alias: \"attr-name\", inside: { string: null } }, \"closure-params\": { pattern: /([=(,:]\\s*|\\bmove\\s*)\\|[^|]*\\||\\|[^|]*\\|(?=\\s*(?:\\{|->))/, lookbehind: true, greedy: true, inside: { \"closure-punctuation\": { pattern: /^\\||\\|$/, alias: \"punctuation\" }, rest: null } }, \"lifetime-annotation\": { pattern: /'\\w+/, alias: \"symbol\" }, \"fragment-specifier\": { pattern: /(\\$\\w+:)[a-z]+/, lookbehind: true, alias: \"punctuation\" }, variable: /\\$\\w+/, \"function-definition\": { pattern: /(\\bfn\\s+)\\w+/, lookbehind: true, alias: \"function\" }, \"type-definition\": { pattern: /(\\b(?:enum|struct|trait|type|union)\\s+)\\w+/, lookbehind: true, alias: \"class-name\" }, \"module-declaration\": [{ pattern: /(\\b(?:crate|mod)\\s+)[a-z][a-z_\\d]*/, lookbehind: true, alias: \"namespace\" }, { pattern: /(\\b(?:crate|self|super)\\s*)::\\s*[a-z][a-z_\\d]*\\b(?:\\s*::(?:\\s*[a-z][a-z_\\d]*\\s*::)*)?/, lookbehind: true, alias: \"namespace\", inside: { punctuation: /::/ } }], keyword: [/\\b(?:Self|abstract|as|async|await|become|box|break|const|continue|crate|do|dyn|else|enum|extern|final|fn|for|if|impl|in|let|loop|macro|match|mod|move|mut|override|priv|pub|ref|return|self|static|struct|super|trait|try|type|typeof|union|unsafe|unsized|use|virtual|where|while|yield)\\b/, /\\b(?:bool|char|f(?:32|64)|[ui](?:8|16|32|64|128|size)|str)\\b/], function: /\\b[a-z_]\\w*(?=\\s*(?:::\\s*<|\\())/, macro: { pattern: /\\b\\w+!/, alias: \"property\" }, constant: /\\b[A-Z_][A-Z_\\d]+\\b/, \"class-name\": /\\b[A-Z]\\w*\\b/, namespace: { pattern: /(?:\\b[a-z][a-z_\\d]*\\s*::\\s*)*\\b[a-z][a-z_\\d]*\\s*::(?!\\s*<)/, inside: { punctuation: /::/ } }, number: /\\b(?:0x[\\dA-Fa-f](?:_?[\\dA-Fa-f])*|0o[0-7](?:_?[0-7])*|0b[01](?:_?[01])*|(?:(?:\\d(?:_?\\d)*)?\\.)?\\d(?:_?\\d)*(?:[Ee][+-]?\\d+)?)(?:_?(?:f32|f64|[iu](?:8|16|32|64|size)?))?\\b/, boolean: /\\b(?:false|true)\\b/, punctuation: /->|\\.\\.=|\\.{1,3}|::|[{}[\\];(),:]/, operator: /[-+*\\/%!^]=?|=[=>]?|&[&=]?|\\|[|=]?|<<?=?|>>?=?|[@?]/ }, e.languages.rust[\"closure-params\"].inside.rest = e.languages.rust, e.languages.rust.attribute.inside.string = e.languages.rust.string;\n}(Prism), Prism.languages.go = Prism.languages.extend(\"clike\", { string: { pattern: /(^|[^\\\\])\"(?:\\\\.|[^\"\\\\\\r\\n])*\"|`[^`]*`/, lookbehind: true, greedy: true }, keyword: /\\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\\b/, boolean: /\\b(?:_|false|iota|nil|true)\\b/, number: [/\\b0(?:b[01_]+|o[0-7_]+)i?\\b/i, /\\b0x(?:[a-f\\d_]+(?:\\.[a-f\\d_]*)?|\\.[a-f\\d_]+)(?:p[+-]?\\d+(?:_\\d+)*)?i?(?!\\w)/i, /(?:\\b\\d[\\d_]*(?:\\.[\\d_]*)?|\\B\\.\\d[\\d_]*)(?:e[+-]?[\\d_]+)?i?(?!\\w)/i], operator: /[*\\/%^!=]=?|\\+[=+]?|-[=-]?|\\|[=|]?|&(?:=|&|\\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\\.\\.\\./, builtin: /\\b(?:append|bool|byte|cap|close|complex|complex(?:64|128)|copy|delete|error|float(?:32|64)|u?int(?:8|16|32|64)?|imag|len|make|new|panic|print(?:ln)?|real|recover|rune|string|uintptr)\\b/ }), Prism.languages.insertBefore(\"go\", \"string\", { char: { pattern: /'(?:\\\\.|[^'\\\\\\r\\n]){0,10}'/, greedy: true } }), delete Prism.languages.go[\"class-name\"], function(e) {\n var n = /\\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|char8_t|class|co_await|co_return|co_yield|compl|concept|const|const_cast|consteval|constexpr|constinit|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|final|float|for|friend|goto|if|import|inline|int|int16_t|int32_t|int64_t|int8_t|long|module|mutable|namespace|new|noexcept|nullptr|operator|override|private|protected|public|register|reinterpret_cast|requires|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|uint16_t|uint32_t|uint64_t|uint8_t|union|unsigned|using|virtual|void|volatile|wchar_t|while)\\b/, t = /\\b(?!<keyword>)\\w+(?:\\s*\\.\\s*\\w+)*\\b/.source.replace(/<keyword>/g, function() {\n return n.source;\n });\n e.languages.cpp = e.languages.extend(\"c\", { \"class-name\": [{ pattern: RegExp(/(\\b(?:class|concept|enum|struct|typename)\\s+)(?!<keyword>)\\w+/.source.replace(/<keyword>/g, function() {\n return n.source;\n })), lookbehind: true }, /\\b[A-Z]\\w*(?=\\s*::\\s*\\w+\\s*\\()/, /\\b[A-Z_]\\w*(?=\\s*::\\s*~\\w+\\s*\\()/i, /\\b\\w+(?=\\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>\\s*::\\s*\\w+\\s*\\()/], keyword: n, number: { pattern: /(?:\\b0b[01']+|\\b0x(?:[\\da-f']+(?:\\.[\\da-f']*)?|\\.[\\da-f']+)(?:p[+-]?[\\d']+)?|(?:\\b[\\d']+(?:\\.[\\d']*)?|\\B\\.[\\d']+)(?:e[+-]?[\\d']+)?)[ful]{0,4}/i, greedy: true }, operator: />>=?|<<=?|->|--|\\+\\+|&&|\\|\\||[?:~]|<=>|[-+*/%&|^!=<>]=?|\\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\\b/, boolean: /\\b(?:false|true)\\b/ }), e.languages.insertBefore(\"cpp\", \"string\", { module: { pattern: RegExp(/(\\b(?:import|module)\\s+)/.source + \"(?:\" + /\"(?:\\\\(?:\\r\\n|[\\s\\S])|[^\"\\\\\\r\\n])*\"|<[^<>\\r\\n]*>/.source + \"|\" + /<mod-name>(?:\\s*:\\s*<mod-name>)?|:\\s*<mod-name>/.source.replace(/<mod-name>/g, function() {\n return t;\n }) + \")\"), lookbehind: true, greedy: true, inside: { string: /^[<\"][\\s\\S]+/, operator: /:/, punctuation: /\\./ } }, \"raw-string\": { pattern: /R\"([^()\\\\ ]{0,16})\\([\\s\\S]*?\\)\\1\"/, alias: \"string\", greedy: true } }), e.languages.insertBefore(\"cpp\", \"keyword\", { \"generic-function\": { pattern: /\\b(?!operator\\b)[a-z_]\\w*\\s*<(?:[^<>]|<[^<>]*>)*>(?=\\s*\\()/i, inside: { function: /^\\w+/, generic: { pattern: /<[\\s\\S]+/, alias: \"class-name\", inside: e.languages.cpp } } } }), e.languages.insertBefore(\"cpp\", \"operator\", { \"double-colon\": { pattern: /::/, alias: \"punctuation\" } }), e.languages.insertBefore(\"cpp\", \"class-name\", { \"base-clause\": { pattern: /(\\b(?:class|struct)\\s+\\w+\\s*:\\s*)[^;{}\"'\\s]+(?:\\s+[^;{}\"'\\s]+)*(?=\\s*[;{])/, lookbehind: true, greedy: true, inside: e.languages.extend(\"cpp\", {}) } }), e.languages.insertBefore(\"inside\", \"double-colon\", { \"class-name\": /\\b[a-z_]\\w*\\b(?!\\s*::)/i }, e.languages.cpp[\"base-clause\"]);\n}(Prism);\n\n// src/themes/index.ts\nvar themes_exports = {};\n__export(themes_exports, {\n dracula: () => dracula_default,\n duotoneDark: () => duotoneDark_default,\n duotoneLight: () => duotoneLight_default,\n github: () => github_default,\n jettwaveDark: () => jettwaveDark_default,\n jettwaveLight: () => jettwaveLight_default,\n nightOwl: () => nightOwl_default,\n nightOwlLight: () => nightOwlLight_default,\n oceanicNext: () => oceanicNext_default,\n okaidia: () => okaidia_default,\n palenight: () => palenight_default,\n shadesOfPurple: () => shadesOfPurple_default,\n synthwave84: () => synthwave84_default,\n ultramin: () => ultramin_default,\n vsDark: () => vsDark_default,\n vsLight: () => vsLight_default\n});\n\n// src/themes/dracula.ts\nvar theme = {\n plain: {\n color: \"#F8F8F2\",\n backgroundColor: \"#282A36\"\n },\n styles: [\n {\n types: [\"prolog\", \"constant\", \"builtin\"],\n style: {\n color: \"rgb(189, 147, 249)\"\n }\n },\n {\n types: [\"inserted\", \"function\"],\n style: {\n color: \"rgb(80, 250, 123)\"\n }\n },\n {\n types: [\"deleted\"],\n style: {\n color: \"rgb(255, 85, 85)\"\n }\n },\n {\n types: [\"changed\"],\n style: {\n color: \"rgb(255, 184, 108)\"\n }\n },\n {\n types: [\"punctuation\", \"symbol\"],\n style: {\n color: \"rgb(248, 248, 242)\"\n }\n },\n {\n types: [\"string\", \"char\", \"tag\", \"selector\"],\n style: {\n color: \"rgb(255, 121, 198)\"\n }\n },\n {\n types: [\"keyword\", \"variable\"],\n style: {\n color: \"rgb(189, 147, 249)\",\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"comment\"],\n style: {\n color: \"rgb(98, 114, 164)\"\n }\n },\n {\n types: [\"attr-name\"],\n style: {\n color: \"rgb(241, 250, 140)\"\n }\n }\n ]\n};\nvar dracula_default = theme;\n\n// src/themes/duotoneDark.ts\nvar theme2 = {\n plain: {\n backgroundColor: \"#2a2734\",\n color: \"#9a86fd\"\n },\n styles: [\n {\n types: [\"comment\", \"prolog\", \"doctype\", \"cdata\", \"punctuation\"],\n style: {\n color: \"#6c6783\"\n }\n },\n {\n types: [\"namespace\"],\n style: {\n opacity: 0.7\n }\n },\n {\n types: [\"tag\", \"operator\", \"number\"],\n style: {\n color: \"#e09142\"\n }\n },\n {\n types: [\"property\", \"function\"],\n style: {\n color: \"#9a86fd\"\n }\n },\n {\n types: [\"tag-id\", \"selector\", \"atrule-id\"],\n style: {\n color: \"#eeebff\"\n }\n },\n {\n types: [\"attr-name\"],\n style: {\n color: \"#c4b9fe\"\n }\n },\n {\n types: [\n \"boolean\",\n \"string\",\n \"entity\",\n \"url\",\n \"attr-value\",\n \"keyword\",\n \"control\",\n \"directive\",\n \"unit\",\n \"statement\",\n \"regex\",\n \"atrule\",\n \"placeholder\",\n \"variable\"\n ],\n style: {\n color: \"#ffcc99\"\n }\n },\n {\n types: [\"deleted\"],\n style: {\n textDecorationLine: \"line-through\"\n }\n },\n {\n types: [\"inserted\"],\n style: {\n textDecorationLine: \"underline\"\n }\n },\n {\n types: [\"italic\"],\n style: {\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"important\", \"bold\"],\n style: {\n fontWeight: \"bold\"\n }\n },\n {\n types: [\"important\"],\n style: {\n color: \"#c4b9fe\"\n }\n }\n ]\n};\nvar duotoneDark_default = theme2;\n\n// src/themes/duotoneLight.ts\nvar theme3 = {\n plain: {\n backgroundColor: \"#faf8f5\",\n color: \"#728fcb\"\n },\n styles: [\n {\n types: [\"comment\", \"prolog\", \"doctype\", \"cdata\", \"punctuation\"],\n style: {\n color: \"#b6ad9a\"\n }\n },\n {\n types: [\"namespace\"],\n style: {\n opacity: 0.7\n }\n },\n {\n types: [\"tag\", \"operator\", \"number\"],\n style: {\n color: \"#063289\"\n }\n },\n {\n types: [\"property\", \"function\"],\n style: {\n color: \"#b29762\"\n }\n },\n {\n types: [\"tag-id\", \"selector\", \"atrule-id\"],\n style: {\n color: \"#2d2006\"\n }\n },\n {\n types: [\"attr-name\"],\n style: {\n color: \"#896724\"\n }\n },\n {\n types: [\n \"boolean\",\n \"string\",\n \"entity\",\n \"url\",\n \"attr-value\",\n \"keyword\",\n \"control\",\n \"directive\",\n \"unit\",\n \"statement\",\n \"regex\",\n \"atrule\"\n ],\n style: {\n color: \"#728fcb\"\n }\n },\n {\n types: [\"placeholder\", \"variable\"],\n style: {\n color: \"#93abdc\"\n }\n },\n {\n types: [\"deleted\"],\n style: {\n textDecorationLine: \"line-through\"\n }\n },\n {\n types: [\"inserted\"],\n style: {\n textDecorationLine: \"underline\"\n }\n },\n {\n types: [\"italic\"],\n style: {\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"important\", \"bold\"],\n style: {\n fontWeight: \"bold\"\n }\n },\n {\n types: [\"important\"],\n style: {\n color: \"#896724\"\n }\n }\n ]\n};\nvar duotoneLight_default = theme3;\n\n// src/themes/github.ts\nvar theme4 = {\n plain: {\n color: \"#393A34\",\n backgroundColor: \"#f6f8fa\"\n },\n styles: [\n {\n types: [\"comment\", \"prolog\", \"doctype\", \"cdata\"],\n style: {\n color: \"#999988\",\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"namespace\"],\n style: {\n opacity: 0.7\n }\n },\n {\n types: [\"string\", \"attr-value\"],\n style: {\n color: \"#e3116c\"\n }\n },\n {\n types: [\"punctuation\", \"operator\"],\n style: {\n color: \"#393A34\"\n }\n },\n {\n types: [\n \"entity\",\n \"url\",\n \"symbol\",\n \"number\",\n \"boolean\",\n \"variable\",\n \"constant\",\n \"property\",\n \"regex\",\n \"inserted\"\n ],\n style: {\n color: \"#36acaa\"\n }\n },\n {\n types: [\"atrule\", \"keyword\", \"attr-name\", \"selector\"],\n style: {\n color: \"#00a4db\"\n }\n },\n {\n types: [\"function\", \"deleted\", \"tag\"],\n style: {\n color: \"#d73a49\"\n }\n },\n {\n types: [\"function-variable\"],\n style: {\n color: \"#6f42c1\"\n }\n },\n {\n types: [\"tag\", \"selector\", \"keyword\"],\n style: {\n color: \"#00009f\"\n }\n }\n ]\n};\nvar github_default = theme4;\n\n// src/themes/nightOwl.ts\nvar theme5 = {\n plain: {\n color: \"#d6deeb\",\n backgroundColor: \"#011627\"\n },\n styles: [\n {\n types: [\"changed\"],\n style: {\n color: \"rgb(162, 191, 252)\",\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"deleted\"],\n style: {\n color: \"rgba(239, 83, 80, 0.56)\",\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"inserted\", \"attr-name\"],\n style: {\n color: \"rgb(173, 219, 103)\",\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"comment\"],\n style: {\n color: \"rgb(99, 119, 119)\",\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"string\", \"url\"],\n style: {\n color: \"rgb(173, 219, 103)\"\n }\n },\n {\n types: [\"variable\"],\n style: {\n color: \"rgb(214, 222, 235)\"\n }\n },\n {\n types: [\"number\"],\n style: {\n color: \"rgb(247, 140, 108)\"\n }\n },\n {\n types: [\"builtin\", \"char\", \"constant\", \"function\"],\n style: {\n color: \"rgb(130, 170, 255)\"\n }\n },\n {\n // This was manually added after the auto-generation\n // so that punctuations are not italicised\n types: [\"punctuation\"],\n style: {\n color: \"rgb(199, 146, 234)\"\n }\n },\n {\n types: [\"selector\", \"doctype\"],\n style: {\n color: \"rgb(199, 146, 234)\",\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"class-name\"],\n style: {\n color: \"rgb(255, 203, 139)\"\n }\n },\n {\n types: [\"tag\", \"operator\", \"keyword\"],\n style: {\n color: \"rgb(127, 219, 202)\"\n }\n },\n {\n types: [\"boolean\"],\n style: {\n color: \"rgb(255, 88, 116)\"\n }\n },\n {\n types: [\"property\"],\n style: {\n color: \"rgb(128, 203, 196)\"\n }\n },\n {\n types: [\"namespace\"],\n style: {\n color: \"rgb(178, 204, 214)\"\n }\n }\n ]\n};\nvar nightOwl_default = theme5;\n\n// src/themes/nightOwlLight.ts\nvar theme6 = {\n plain: {\n color: \"#403f53\",\n backgroundColor: \"#FBFBFB\"\n },\n styles: [\n {\n types: [\"changed\"],\n style: {\n color: \"rgb(162, 191, 252)\",\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"deleted\"],\n style: {\n color: \"rgba(239, 83, 80, 0.56)\",\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"inserted\", \"attr-name\"],\n style: {\n color: \"rgb(72, 118, 214)\",\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"comment\"],\n style: {\n color: \"rgb(152, 159, 177)\",\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"string\", \"builtin\", \"char\", \"constant\", \"url\"],\n style: {\n color: \"rgb(72, 118, 214)\"\n }\n },\n {\n types: [\"variable\"],\n style: {\n color: \"rgb(201, 103, 101)\"\n }\n },\n {\n types: [\"number\"],\n style: {\n color: \"rgb(170, 9, 130)\"\n }\n },\n {\n // This was manually added after the auto-generation\n // so that punctuations are not italicised\n types: [\"punctuation\"],\n style: {\n color: \"rgb(153, 76, 195)\"\n }\n },\n {\n types: [\"function\", \"selector\", \"doctype\"],\n style: {\n color: \"rgb(153, 76, 195)\",\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"class-name\"],\n style: {\n color: \"rgb(17, 17, 17)\"\n }\n },\n {\n types: [\"tag\"],\n style: {\n color: \"rgb(153, 76, 195)\"\n }\n },\n {\n types: [\"operator\", \"property\", \"keyword\", \"namespace\"],\n style: {\n color: \"rgb(12, 150, 155)\"\n }\n },\n {\n types: [\"boolean\"],\n style: {\n color: \"rgb(188, 84, 84)\"\n }\n }\n ]\n};\nvar nightOwlLight_default = theme6;\n\n// src/themes/oceanicNext.ts\nvar colors = {\n char: \"#D8DEE9\",\n comment: \"#999999\",\n keyword: \"#c5a5c5\",\n primitive: \"#5a9bcf\",\n string: \"#8dc891\",\n variable: \"#d7deea\",\n boolean: \"#ff8b50\",\n punctuation: \"#5FB3B3\",\n tag: \"#fc929e\",\n function: \"#79b6f2\",\n className: \"#FAC863\",\n method: \"#6699CC\",\n operator: \"#fc929e\"\n};\nvar theme7 = {\n plain: {\n backgroundColor: \"#282c34\",\n color: \"#ffffff\"\n },\n styles: [\n {\n types: [\"attr-name\"],\n style: {\n color: colors.keyword\n }\n },\n {\n types: [\"attr-value\"],\n style: {\n color: colors.string\n }\n },\n {\n types: [\n \"comment\",\n \"block-comment\",\n \"prolog\",\n \"doctype\",\n \"cdata\",\n \"shebang\"\n ],\n style: {\n color: colors.comment\n }\n },\n {\n types: [\n \"property\",\n \"number\",\n \"function-name\",\n \"constant\",\n \"symbol\",\n \"deleted\"\n ],\n style: {\n color: colors.primitive\n }\n },\n {\n types: [\"boolean\"],\n style: {\n color: colors.boolean\n }\n },\n {\n types: [\"tag\"],\n style: {\n color: colors.tag\n }\n },\n {\n types: [\"string\"],\n style: {\n color: colors.string\n }\n },\n {\n types: [\"punctuation\"],\n style: {\n color: colors.string\n }\n },\n {\n types: [\"selector\", \"char\", \"builtin\", \"inserted\"],\n style: {\n color: colors.char\n }\n },\n {\n types: [\"function\"],\n style: {\n color: colors.function\n }\n },\n {\n types: [\"operator\", \"entity\", \"url\", \"variable\"],\n style: {\n color: colors.variable\n }\n },\n {\n types: [\"keyword\"],\n style: {\n color: colors.keyword\n }\n },\n {\n types: [\"atrule\", \"class-name\"],\n style: {\n color: colors.className\n }\n },\n {\n types: [\"important\"],\n style: {\n fontWeight: \"400\"\n }\n },\n {\n types: [\"bold\"],\n style: {\n fontWeight: \"bold\"\n }\n },\n {\n types: [\"italic\"],\n style: {\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"namespace\"],\n style: {\n opacity: 0.7\n }\n }\n ]\n};\nvar oceanicNext_default = theme7;\n\n// src/themes/okaidia.ts\nvar theme8 = {\n plain: {\n color: \"#f8f8f2\",\n backgroundColor: \"#272822\"\n },\n styles: [\n {\n types: [\"changed\"],\n style: {\n color: \"rgb(162, 191, 252)\",\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"deleted\"],\n style: {\n color: \"#f92672\",\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"inserted\"],\n style: {\n color: \"rgb(173, 219, 103)\",\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"comment\"],\n style: {\n color: \"#8292a2\",\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"string\", \"url\"],\n style: {\n color: \"#a6e22e\"\n }\n },\n {\n types: [\"variable\"],\n style: {\n color: \"#f8f8f2\"\n }\n },\n {\n types: [\"number\"],\n style: {\n color: \"#ae81ff\"\n }\n },\n {\n types: [\"builtin\", \"char\", \"constant\", \"function\", \"class-name\"],\n style: {\n color: \"#e6db74\"\n }\n },\n {\n types: [\"punctuation\"],\n style: {\n color: \"#f8f8f2\"\n }\n },\n {\n types: [\"selector\", \"doctype\"],\n style: {\n color: \"#a6e22e\",\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"tag\", \"operator\", \"keyword\"],\n style: {\n color: \"#66d9ef\"\n }\n },\n {\n types: [\"boolean\"],\n style: {\n color: \"#ae81ff\"\n }\n },\n {\n types: [\"namespace\"],\n style: {\n color: \"rgb(178, 204, 214)\",\n opacity: 0.7\n }\n },\n {\n types: [\"tag\", \"property\"],\n style: {\n color: \"#f92672\"\n }\n },\n {\n types: [\"attr-name\"],\n style: {\n color: \"#a6e22e !important\"\n }\n },\n {\n types: [\"doctype\"],\n style: {\n color: \"#8292a2\"\n }\n },\n {\n types: [\"rule\"],\n style: {\n color: \"#e6db74\"\n }\n }\n ]\n};\nvar okaidia_default = theme8;\n\n// src/themes/palenight.ts\nvar theme9 = {\n plain: {\n color: \"#bfc7d5\",\n backgroundColor: \"#292d3e\"\n },\n styles: [\n {\n types: [\"comment\"],\n style: {\n color: \"rgb(105, 112, 152)\",\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"string\", \"inserted\"],\n style: {\n color: \"rgb(195, 232, 141)\"\n }\n },\n {\n types: [\"number\"],\n style: {\n color: \"rgb(247, 140, 108)\"\n }\n },\n {\n types: [\"builtin\", \"char\", \"constant\", \"function\"],\n style: {\n color: \"rgb(130, 170, 255)\"\n }\n },\n {\n types: [\"punctuation\", \"selector\"],\n style: {\n color: \"rgb(199, 146, 234)\"\n }\n },\n {\n types: [\"variable\"],\n style: {\n color: \"rgb(191, 199, 213)\"\n }\n },\n {\n types: [\"class-name\", \"attr-name\"],\n style: {\n color: \"rgb(255, 203, 107)\"\n }\n },\n {\n types: [\"tag\", \"deleted\"],\n style: {\n color: \"rgb(255, 85, 114)\"\n }\n },\n {\n types: [\"operator\"],\n style: {\n color: \"rgb(137, 221, 255)\"\n }\n },\n {\n types: [\"boolean\"],\n style: {\n color: \"rgb(255, 88, 116)\"\n }\n },\n {\n types: [\"keyword\"],\n style: {\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"doctype\"],\n style: {\n color: \"rgb(199, 146, 234)\",\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"namespace\"],\n style: {\n color: \"rgb(178, 204, 214)\"\n }\n },\n {\n types: [\"url\"],\n style: {\n color: \"rgb(221, 221, 221)\"\n }\n }\n ]\n};\nvar palenight_default = theme9;\n\n// src/themes/shadesOfPurple.ts\nvar theme10 = {\n plain: {\n color: \"#9EFEFF\",\n backgroundColor: \"#2D2A55\"\n },\n styles: [\n {\n types: [\"changed\"],\n style: {\n color: \"rgb(255, 238, 128)\"\n }\n },\n {\n types: [\"deleted\"],\n style: {\n color: \"rgba(239, 83, 80, 0.56)\"\n }\n },\n {\n types: [\"inserted\"],\n style: {\n color: \"rgb(173, 219, 103)\"\n }\n },\n {\n types: [\"comment\"],\n style: {\n color: \"rgb(179, 98, 255)\",\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"punctuation\"],\n style: {\n color: \"rgb(255, 255, 255)\"\n }\n },\n {\n types: [\"constant\"],\n style: {\n color: \"rgb(255, 98, 140)\"\n }\n },\n {\n types: [\"string\", \"url\"],\n style: {\n color: \"rgb(165, 255, 144)\"\n }\n },\n {\n types: [\"variable\"],\n style: {\n color: \"rgb(255, 238, 128)\"\n }\n },\n {\n types: [\"number\", \"boolean\"],\n style: {\n color: \"rgb(255, 98, 140)\"\n }\n },\n {\n types: [\"attr-name\"],\n style: {\n color: \"rgb(255, 180, 84)\"\n }\n },\n {\n types: [\n \"keyword\",\n \"operator\",\n \"property\",\n \"namespace\",\n \"tag\",\n \"selector\",\n \"doctype\"\n ],\n style: {\n color: \"rgb(255, 157, 0)\"\n }\n },\n {\n types: [\"builtin\", \"char\", \"constant\", \"function\", \"class-name\"],\n style: {\n color: \"rgb(250, 208, 0)\"\n }\n }\n ]\n};\nvar shadesOfPurple_default = theme10;\n\n// src/themes/synthwave84.ts\nvar theme11 = {\n plain: {\n backgroundColor: \"linear-gradient(to bottom, #2a2139 75%, #34294f)\",\n backgroundImage: \"#34294f\",\n color: \"#f92aad\",\n textShadow: \"0 0 2px #100c0f, 0 0 5px #dc078e33, 0 0 10px #fff3\"\n },\n styles: [\n {\n types: [\"comment\", \"block-comment\", \"prolog\", \"doctype\", \"cdata\"],\n style: {\n color: \"#495495\",\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"punctuation\"],\n style: {\n color: \"#ccc\"\n }\n },\n {\n types: [\n \"tag\",\n \"attr-name\",\n \"namespace\",\n \"number\",\n \"unit\",\n \"hexcode\",\n \"deleted\"\n ],\n style: {\n color: \"#e2777a\"\n }\n },\n {\n types: [\"property\", \"selector\"],\n style: {\n color: \"#72f1b8\",\n textShadow: \"0 0 2px #100c0f, 0 0 10px #257c5575, 0 0 35px #21272475\"\n }\n },\n {\n types: [\"function-name\"],\n style: {\n color: \"#6196cc\"\n }\n },\n {\n types: [\"boolean\", \"selector-id\", \"function\"],\n style: {\n color: \"#fdfdfd\",\n textShadow: \"0 0 2px #001716, 0 0 3px #03edf975, 0 0 5px #03edf975, 0 0 8px #03edf975\"\n }\n },\n {\n types: [\"class-name\", \"maybe-class-name\", \"builtin\"],\n style: {\n color: \"#fff5f6\",\n textShadow: \"0 0 2px #000, 0 0 10px #fc1f2c75, 0 0 5px #fc1f2c75, 0 0 25px #fc1f2c75\"\n }\n },\n {\n types: [\"constant\", \"symbol\"],\n style: {\n color: \"#f92aad\",\n textShadow: \"0 0 2px #100c0f, 0 0 5px #dc078e33, 0 0 10px #fff3\"\n }\n },\n {\n types: [\"important\", \"atrule\", \"keyword\", \"selector-class\"],\n style: {\n color: \"#f4eee4\",\n textShadow: \"0 0 2px #393a33, 0 0 8px #f39f0575, 0 0 2px #f39f0575\"\n }\n },\n {\n types: [\"string\", \"char\", \"attr-value\", \"regex\", \"variable\"],\n style: {\n color: \"#f87c32\"\n }\n },\n {\n types: [\"parameter\"],\n style: {\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"entity\", \"url\"],\n style: {\n color: \"#67cdcc\"\n }\n },\n {\n types: [\"operator\"],\n style: {\n color: \"ffffffee\"\n }\n },\n {\n types: [\"important\", \"bold\"],\n style: {\n fontWeight: \"bold\"\n }\n },\n {\n types: [\"italic\"],\n style: {\n fontStyle: \"italic\"\n }\n },\n {\n types: [\"entity\"],\n style: {\n cursor: \"help\"\n }\n },\n {\n types: [\"inserted\"],\n style: {\n color: \"green\"\n }\n }\n ]\n};\nvar synthwave84_default = theme11;\n\n// src/themes/ultramin.ts\nvar theme12 = {\n plain: {\n color: \"#282a2e\",\n backgroundColor: \"#ffffff\"\n },\n styles: [\n {\n types: [\"comment\"],\n style: {\n color: \"rgb(197, 200, 198)\"\n }\n },\n {\n types: [\"string\", \"number\", \"builtin\", \"variable\"],\n style: {\n color: \"rgb(150, 152, 150)\"\n }\n },\n {\n types: [\"class-name\", \"function\", \"tag\", \"attr-name\"],\n style: {\n color: \"rgb(40, 42, 46)\"\n }\n }\n ]\n};\nvar ultramin_default = theme12;\n\n// src/themes/vsDark.ts\nvar theme13 = {\n plain: {\n color: \"#9CDCFE\",\n backgroundColor: \"#1E1E1E\"\n },\n styles: [\n {\n types: [\"prolog\"],\n style: {\n color: \"rgb(0, 0, 128)\"\n }\n },\n {\n types: [\"comment\"],\n style: {\n color: \"rgb(106, 153, 85)\"\n }\n },\n {\n types: [\"builtin\", \"changed\", \"keyword\", \"interpolation-punctuation\"],\n style: {\n color: \"rgb(86, 156, 214)\"\n }\n },\n {\n types: [\"number\", \"inserted\"],\n style: {\n color: \"rgb(181, 206, 168)\"\n }\n },\n {\n types: [\"constant\"],\n style: {\n color: \"rgb(100, 102, 149)\"\n }\n },\n {\n types: [\"attr-name\", \"variable\"],\n style: {\n color: \"rgb(156, 220, 254)\"\n }\n },\n {\n types: [\"deleted\", \"string\", \"attr-value\", \"template-punctuation\"],\n style: {\n color: \"rgb(206, 145, 120)\"\n }\n },\n {\n types: [\"selector\"],\n style: {\n color: \"rgb(215, 186, 125)\"\n }\n },\n {\n // Fix tag color\n types: [\"tag\"],\n style: {\n color: \"rgb(78, 201, 176)\"\n }\n },\n {\n // Fix tag color for HTML\n types: [\"tag\"],\n languages: [\"markup\"],\n style: {\n color: \"rgb(86, 156, 214)\"\n }\n },\n {\n types: [\"punctuation\", \"operator\"],\n style: {\n color: \"rgb(212, 212, 212)\"\n }\n },\n {\n // Fix punctuation color for HTML\n types: [\"punctuation\"],\n languages: [\"markup\"],\n style: {\n color: \"#808080\"\n }\n },\n {\n types: [\"function\"],\n style: {\n color: \"rgb(220, 220, 170)\"\n }\n },\n {\n types: [\"class-name\"],\n style: {\n color: \"rgb(78, 201, 176)\"\n }\n },\n {\n types: [\"char\"],\n style: {\n color: \"rgb(209, 105, 105)\"\n }\n }\n ]\n};\nvar vsDark_default = theme13;\n\n// src/themes/vsLight.ts\nvar theme14 = {\n plain: {\n color: \"#000000\",\n backgroundColor: \"#ffffff\"\n },\n styles: [\n {\n types: [\"comment\"],\n style: {\n color: \"rgb(0, 128, 0)\"\n }\n },\n {\n types: [\"builtin\"],\n style: {\n color: \"rgb(0, 112, 193)\"\n }\n },\n {\n types: [\"number\", \"variable\", \"inserted\"],\n style: {\n color: \"rgb(9, 134, 88)\"\n }\n },\n {\n types: [\"operator\"],\n style: {\n color: \"rgb(0, 0, 0)\"\n }\n },\n {\n types: [\"constant\", \"char\"],\n style: {\n color: \"rgb(129, 31, 63)\"\n }\n },\n {\n types: [\"tag\"],\n style: {\n color: \"rgb(128, 0, 0)\"\n }\n },\n {\n types: [\"attr-name\"],\n style: {\n color: \"rgb(255, 0, 0)\"\n }\n },\n {\n types: [\"deleted\", \"string\"],\n style: {\n color: \"rgb(163, 21, 21)\"\n }\n },\n {\n types: [\"changed\", \"punctuation\"],\n style: {\n color: \"rgb(4, 81, 165)\"\n }\n },\n {\n types: [\"function\", \"keyword\"],\n style: {\n color: \"rgb(0, 0, 255)\"\n }\n },\n {\n types: [\"class-name\"],\n style: {\n color: \"rgb(38, 127, 153)\"\n }\n }\n ]\n};\nvar vsLight_default = theme14;\n\n// src/themes/jettwaveDark.ts\nvar theme15 = {\n plain: {\n color: \"#f8fafc\",\n backgroundColor: \"#011627\"\n },\n styles: [\n {\n types: [\"prolog\"],\n style: {\n color: \"#000080\"\n }\n },\n {\n types: [\"comment\"],\n style: {\n color: \"#6A9955\"\n }\n },\n {\n types: [\"builtin\", \"changed\", \"keyword\", \"interpolation-punctuation\"],\n style: {\n color: \"#569CD6\"\n }\n },\n {\n types: [\"number\", \"inserted\"],\n style: {\n color: \"#B5CEA8\"\n }\n },\n {\n types: [\"constant\"],\n style: {\n color: \"#f8fafc\"\n }\n },\n {\n types: [\"attr-name\", \"variable\"],\n style: {\n color: \"#9CDCFE\"\n }\n },\n {\n types: [\"deleted\", \"string\", \"attr-value\", \"template-punctuation\"],\n style: {\n color: \"#cbd5e1\"\n }\n },\n {\n types: [\"selector\"],\n style: {\n color: \"#D7BA7D\"\n }\n },\n {\n types: [\"tag\"],\n style: {\n color: \"#0ea5e9\"\n }\n },\n {\n types: [\"tag\"],\n languages: [\"markup\"],\n style: {\n color: \"#0ea5e9\"\n }\n },\n {\n types: [\"punctuation\", \"operator\"],\n style: {\n color: \"#D4D4D4\"\n }\n },\n {\n types: [\"punctuation\"],\n languages: [\"markup\"],\n style: {\n color: \"#808080\"\n }\n },\n {\n types: [\"function\"],\n style: {\n color: \"#7dd3fc\"\n }\n },\n {\n types: [\"class-name\"],\n style: {\n color: \"#0ea5e9\"\n }\n },\n {\n types: [\"char\"],\n style: {\n color: \"#D16969\"\n }\n }\n ]\n};\nvar jettwaveDark_default = theme15;\n\n// src/themes/jettwaveLight.ts\nvar theme16 = {\n plain: {\n color: \"#0f172a\",\n backgroundColor: \"#f1f5f9\"\n },\n styles: [\n {\n types: [\"prolog\"],\n style: {\n color: \"#000080\"\n }\n },\n {\n types: [\"comment\"],\n style: {\n color: \"#6A9955\"\n }\n },\n {\n types: [\"builtin\", \"changed\", \"keyword\", \"interpolation-punctuation\"],\n style: {\n color: \"#0c4a6e\"\n }\n },\n {\n types: [\"number\", \"inserted\"],\n style: {\n color: \"#B5CEA8\"\n }\n },\n {\n types: [\"constant\"],\n style: {\n color: \"#0f172a\"\n }\n },\n {\n types: [\"attr-name\", \"variable\"],\n style: {\n color: \"#0c4a6e\"\n }\n },\n {\n types: [\"deleted\", \"string\", \"attr-value\", \"template-punctuation\"],\n style: {\n color: \"#64748b\"\n }\n },\n {\n types: [\"selector\"],\n style: {\n color: \"#D7BA7D\"\n }\n },\n {\n types: [\"tag\"],\n style: {\n color: \"#0ea5e9\"\n }\n },\n {\n types: [\"tag\"],\n languages: [\"markup\"],\n style: {\n color: \"#0ea5e9\"\n }\n },\n {\n types: [\"punctuation\", \"operator\"],\n style: {\n color: \"#475569\"\n }\n },\n {\n types: [\"punctuation\"],\n languages: [\"markup\"],\n style: {\n color: \"#808080\"\n }\n },\n {\n types: [\"function\"],\n style: {\n color: \"#0e7490\"\n }\n },\n {\n types: [\"class-name\"],\n style: {\n color: \"#0ea5e9\"\n }\n },\n {\n types: [\"char\"],\n style: {\n color: \"#D16969\"\n }\n }\n ]\n};\nvar jettwaveLight_default = theme16;\n\n// src/index.ts\nimport { createElement } from \"react\";\n\n// src/components/useThemeDictionary.ts\nimport { useEffect, useRef, useState } from \"react\";\n\n// src/utils/themeToDict.ts\nvar themeToDict = (theme17, language) => {\n const { plain } = theme17;\n const themeDict = theme17.styles.reduce((acc, themeEntry) => {\n const { languages: languages2, style } = themeEntry;\n if (languages2 && !languages2.includes(language)) {\n return acc;\n }\n themeEntry.types.forEach((type) => {\n const accStyle = __spreadValues(__spreadValues({}, acc[type]), style);\n acc[type] = accStyle;\n });\n return acc;\n }, {});\n themeDict.root = plain;\n themeDict.plain = __spreadProps(__spreadValues({}, plain), { backgroundColor: void 0 });\n return themeDict;\n};\nvar themeToDict_default = themeToDict;\n\n// src/components/useThemeDictionary.ts\nvar useThemeDictionary = (language, theme17) => {\n const [themeDictionary, setThemeDictionary] = useState(\n themeToDict_default(theme17, language)\n );\n const previousTheme = useRef();\n const previousLanguage = useRef();\n useEffect(() => {\n if (theme17 !== previousTheme.current || language !== previousLanguage.current) {\n previousTheme.current = theme17;\n previousLanguage.current = language;\n setThemeDictionary(themeToDict_default(theme17, language));\n }\n }, [language, theme17]);\n return themeDictionary;\n};\n\n// src/components/useGetLineProps.ts\nimport { useCallback } from \"react\";\nimport clsx from \"clsx\";\nvar useGetLineProps = (themeDictionary) => useCallback(\n (_a) => {\n var _b = _a, { className, style, line } = _b, rest = __objRest(_b, [\"className\", \"style\", \"line\"]);\n const output = __spreadProps(__spreadValues({}, rest), {\n className: clsx(\"token-line\", className)\n });\n if (typeof themeDictionary === \"object\" && \"plain\" in themeDictionary)\n output.style = themeDictionary.plain;\n if (typeof style === \"object\")\n output.style = __spreadValues(__spreadValues({}, output.style || {}), style);\n return output;\n },\n [themeDictionary]\n);\n\n// src/components/useGetTokenProps.ts\nimport { useCallback as useCallback2 } from \"react\";\nimport clsx2 from \"clsx\";\nvar useGetTokenProps = (themeDictionary) => {\n const styleForToken = useCallback2(\n ({ types, empty }) => {\n if (themeDictionary == null)\n return void 0;\n else if (types.length === 1 && types[0] === \"plain\") {\n return empty != null ? { display: \"inline-block\" } : void 0;\n } else if (types.length === 1 && empty != null) {\n return themeDictionary[types[0]];\n }\n return Object.assign(\n empty != null ? { display: \"inline-block\" } : {},\n ...types.map((type) => themeDictionary[type])\n );\n },\n [themeDictionary]\n );\n return useCallback2(\n (_a) => {\n var _b = _a, { token, className, style } = _b, rest = __objRest(_b, [\"token\", \"className\", \"style\"]);\n const output = __spreadProps(__spreadValues({}, rest), {\n className: clsx2(\"token\", ...token.types, className),\n children: token.content,\n style: styleForToken(token)\n });\n if (style != null) {\n output.style = __spreadValues(__spreadValues({}, output.style || {}), style);\n }\n return output;\n },\n [styleForToken]\n );\n};\n\n// src/utils/normalizeTokens.ts\nvar newlineRe = /\\r\\n|\\r|\\n/;\nvar normalizeEmptyLines = (line) => {\n if (line.length === 0) {\n line.push({\n types: [\"plain\"],\n content: \"\\n\",\n empty: true\n });\n } else if (line.length === 1 && line[0].content === \"\") {\n line[0].content = \"\\n\";\n line[0].empty = true;\n }\n};\nvar appendTypes = (types, add) => {\n const typesSize = types.length;\n if (typesSize > 0 && types[typesSize - 1] === add) {\n return types;\n }\n return types.concat(add);\n};\nvar normalizeTokens = (tokens) => {\n const typeArrStack = [[]];\n const tokenArrStack = [tokens];\n const tokenArrIndexStack = [0];\n const tokenArrSizeStack = [tokens.length];\n let i = 0;\n let stackIndex = 0;\n let currentLine = [];\n const acc = [currentLine];\n while (stackIndex > -1) {\n while ((i = tokenArrIndexStack[stackIndex]++) < tokenArrSizeStack[stackIndex]) {\n let content;\n let types = typeArrStack[stackIndex];\n const tokenArr = tokenArrStack[stackIndex];\n const token = tokenArr[i];\n if (typeof token === \"string\") {\n types = stackIndex > 0 ? types : [\"plain\"];\n content = token;\n } else {\n types = appendTypes(types, token.type);\n if (token.alias) {\n types = appendTypes(types, token.alias);\n }\n content = token.content;\n }\n if (typeof content !== \"string\") {\n stackIndex++;\n typeArrStack.push(types);\n tokenArrStack.push(content);\n tokenArrIndexStack.push(0);\n tokenArrSizeStack.push(content.length);\n continue;\n }\n const splitByNewlines = content.split(newlineRe);\n const newlineCount = splitByNewlines.length;\n currentLine.push({\n types,\n content: splitByNewlines[0]\n });\n for (let i2 = 1; i2 < newlineCount; i2++) {\n normalizeEmptyLines(currentLine);\n acc.push(currentLine = []);\n currentLine.push({\n types,\n content: splitByNewlines[i2]\n });\n }\n }\n stackIndex--;\n typeArrStack.pop();\n tokenArrStack.pop();\n tokenArrIndexStack.pop();\n tokenArrSizeStack.pop();\n }\n normalizeEmptyLines(currentLine);\n return acc;\n};\nvar normalizeTokens_default = normalizeTokens;\n\n// src/components/useTokenize.ts\nimport { useMemo, useRef as useRef2 } from \"react\";\nvar useTokenize = ({ prism, code, grammar, language }) => {\n const prismRef = useRef2(prism);\n return useMemo(() => {\n if (grammar == null)\n return normalizeTokens_default([code]);\n const prismConfig = {\n code,\n grammar,\n language,\n tokens: []\n };\n prismRef.current.hooks.run(\"before-tokenize\", prismConfig);\n prismConfig.tokens = prismRef.current.tokenize(code, grammar);\n prismRef.current.hooks.run(\"after-tokenize\", prismConfig);\n return normalizeTokens_default(prismConfig.tokens);\n }, [code, grammar, language]);\n};\n\n// src/components/highlight.ts\nvar Highlight = ({\n children,\n language: _language,\n code,\n theme: theme17,\n prism\n}) => {\n const language = _language.toLowerCase();\n const themeDictionary = useThemeDictionary(language, theme17);\n const getLineProps = useGetLineProps(themeDictionary);\n const getTokenProps = useGetTokenProps(themeDictionary);\n const grammar = prism.languages[language];\n const tokens = useTokenize({ prism, language, code, grammar });\n return children({\n tokens,\n className: `prism-code language-${language}`,\n style: themeDictionary != null ? themeDictionary.root : {},\n getLineProps,\n getTokenProps\n });\n};\n\n// src/index.ts\nvar Highlight2 = (props) => createElement(Highlight, __spreadProps(__spreadValues({}, props), {\n prism: props.prism || Prism,\n theme: props.theme || vsDark_default,\n code: props.code,\n language: props.language\n}));\nexport {\n Highlight2 as Highlight,\n Prism,\n themes_exports as themes\n};\n/*! Bundled license information:\n\nprismjs/prism.js:\n (**\n * Prism: Lightweight, robust, elegant syntax highlighting\n *\n * @license MIT <https://opensource.org/licenses/MIT>\n * @author Lea Verou <https://lea.verou.me>\n * @namespace\n * @public\n *)\n*/\n//# sourceMappingURL=index.mjs.map","import React from 'react';\nimport {Highlight, themes} from 'prism-react-renderer';\n\nimport '../styles/components/code.scss';\n\nconst baseClass = 'eclipse-jkube-code';\n\nconst interpolateString = (string, props) => {\n return string.replace(/\\${([^${}\\s]+)}/g, (original, match) => {\n let prop = {props};\n for (const p of match.split('.')) {\n if (prop[p]) {\n prop = prop[p];\n } else {\n prop = original;\n break;\n }\n }\n return prop;\n });\n};\n\nexport const Code = ({\n className = '',\n language = className.replace(/language-/, ''),\n children,\n ...props\n}) => {\n if (typeof children === 'string') {\n children = children.replace(/\\n$/, '');\n children = interpolateString(children, props);\n }\n return (\n <Highlight code={children} language={language} theme={themes.vsLight}>\n {({className, style, tokens, getLineProps, getTokenProps}) => (\n <code className={`${baseClass} ${className}`} style={{...style, backgroundColor: undefined}}>\n {tokens.map((line, index) => {\n const lineProps = {...getLineProps({line, key: index})};\n lineProps.style = {...lineProps.style, display: 'block'}\n return (\n <span key={index} {...lineProps}>\n {line.map((token, key) => (\n <span key={key} {...getTokenProps({token, key})} />\n ))}\n </span>\n );\n })}\n </code>\n )}\n </Highlight>\n );\n};\n\nexport const CodeBlock = ({\n className = '',\n children,\n ...props\n}) => {\n className += ` ${baseClass}__container`;\n if (/^language-\\S+$/.test(children?.props?.className)) {\n className += ` ${children.props.className}`\n }\n return <pre className={className} {...props}>{children}</pre>;\n}\n","export default \"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K\"","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {Link} from 'gatsby';\nimport {resolveI18nPath} from '../i18n';\nimport jkubeLogo from '../assets/jkube-logo-horizontal-white.svg';\n\nconst ExternalLink = ({href, title}) => (\n <a href={href} target='_blank' rel='noopener'>{title}</a>\n);\n\nexport const Footer = ({locale}) => {\n const resolvePath = resolveI18nPath(locale);\n return (\n <div className='eclipse-jkube-footer'>\n <div className='eclipse-jkube-footer__logo-jkube'>\n <Link to={resolvePath('/')}>\n <img className='eclipse-jkube-footer__logo-jkube-image' src={jkubeLogo} alt='JKube' />\n </Link>\n <span className='eclipse-jkube-footer__logo-jkube-tagline'>\n Cloud-Native Java Applications without a hassle\n </span>\n </div>\n <div className='eclipse-jkube-footer__links'>\n <ul className='eclipse-jkube-footer__links-list'>\n <li><Link to={resolvePath('/docs#getting-started')}>Get Started</Link></li>\n <li><Link to={resolvePath('/docs')}>Docs</Link></li>\n <li><Link to={resolvePath('/quickstarts')}>Quickstarts</Link></li>\n <li><Link to={resolvePath('/demos')}>Demos</Link></li>\n </ul>\n <ul className='eclipse-jkube-footer__links-list'>\n <li><Link to={resolvePath('/community')}>Community</Link></li>\n <li><Link to={resolvePath('/community#planning-and-meetings')}>Get Involved</Link></li>\n <li><Link to={resolvePath('/contributing')}>Contributing</Link></li>\n </ul>\n <ul className='eclipse-jkube-footer__links-list'>\n <li><ExternalLink href='https://www.eclipse.org' title='Eclipse Foundation'/></li>\n <li><ExternalLink href='https://www.eclipse.org/legal/privacy.php' title='Privacy Policy'/></li>\n <li><ExternalLink href='https://www.eclipse.org/legal/termsofuse.php' title='Terms of Use'/></li>\n <li><ExternalLink href='https://www.eclipse.org/legal/copyright.php' title='Copyright Agent'/></li>\n <li><ExternalLink href='https://www.eclipse.org/legal' title='Legal Resources'/></li>\n </ul>\n </div>\n <div className='eclipse-jkube-footer__copyright'>Copyright © Eclipse Foundation</div>\n </div>\n );\n};\n\nFooter.propTypes = {\n locale: PropTypes.string.isRequired,\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {Tab, YouTube} from './';\n\nimport '../styles/components/getting-started-tab.scss';\n\nconst baseClass = 'eclipse-jkube-getting-started-tab';\n\nexport const GettingStartedTab = ({id, title, titleCompact, videoId, children}) => {\n return (\n <Tab id={id} title={title} titleCompact={titleCompact}>\n <div className={baseClass}>\n <div className={`${baseClass}__instructions`}>\n {children}\n </div>\n <YouTube videoId={videoId} />\n </div>\n </Tab>\n );\n};\n\nGettingStartedTab.propTypes = {\n videoId: PropTypes.string.isRequired,\n}\n","export default __webpack_public_path__ + \"static/EF_WHT-OR_png-7196a6f82901159b69df7649d418f4ac.png\";","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {Link} from 'gatsby'\nimport {resolveI18nPath} from '../i18n';\nimport logo from '../assets/EF_WHT-OR_png.png';\nimport jkubeLogo from '../assets/jkube-logo-horizontal-white.svg';\n\nconst cClass = 'eclipse-jkube__header';\n\nconst TM = () => (\n <span className={`${cClass}-trade-mark`}>™</span>\n);\n\nexport const Header = ({locale}) => {\n const resolvePath = resolveI18nPath(locale);\n return (\n <header className={cClass}>\n <div className={`${cClass}-container`}>\n <Link to={resolvePath('/')} className={`${cClass}-logo`}>\n <div className={`${cClass}-logo-eclipse-image`}><img src={logo} alt='Eclipse Foundation' /></div>\n <div className={`${cClass}-logo-jkube`}>\n <img className={`${cClass}-logo-jkube-image`} src={jkubeLogo} alt='JKube' /><TM/>\n </div>\n </Link>\n <div className={`${cClass}-content`}>\n <ul>\n <li><Link to={resolvePath('/docs')}>Docs</Link></li>\n <li><Link to={resolvePath('/demos')}>Demos</Link></li>\n <li><Link to={resolvePath('/community')}>Community</Link></li>\n <li><Link to={resolvePath('/contributing')}>Contributing</Link></li>\n <li>\n <a\n className={`${cClass}-stars`}\n href='https://github.com/eclipse-jkube/jkube' title='eclipse-jkube/jkube'\n target='_blank' rel='noopener'\n >\n <img src='https://img.shields.io/github/stars/eclipse-jkube/jkube?style=social' alt='eclipse-jkube/jkube stargazers' />\n </a>\n </li>\n </ul>\n </div>\n </div>\n </header>\n );\n};\n\nHeader.propTypes = {\n locale: PropTypes.string.isRequired,\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {StaticImage} from 'gatsby-plugin-image';\n\nimport '../styles/components/hero.scss';\n\nconst baseClass = 'eclipse-jkube-hero';\nexport const Hero = ({children}) => {\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__content`}>\n {children}\n </div>\n <div className={`${baseClass}__image`}>\n <StaticImage\n src='../assets/cubes-vert.jpg'\n className={`${baseClass}__image-wrapper-vertical`}\n objectPosition='center top'\n loading='eager'\n alt='A picture of multiple concrete cubes aligned in a grid'\n />\n <StaticImage\n src='../assets/cubes.jpg'\n className={`${baseClass}__image-wrapper-landscape`}\n objectPosition='center top'\n loading='eager'\n alt='A picture of multiple concrete cubes aligned in a grid'\n />\n </div>\n </div>\n );\n};\n\nHero.propTypes = {\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node\n ]).isRequired\n};\n","import React from 'react';\n\nexport const GradleIcon = ({\n className = '',\n title = 'Gradle',\n variant = 'dark',\n elephantColor = variant === 'dark' ? '#02303a' : '#fff',\n ...props\n}) => (\n <svg\n xmlns='http://www.w3.org/2000/svg'\n xmlnsXlink='http://www.w3.org/1999/xlink'\n viewBox=\"0 0 90 66.06\"\n {...props}\n >\n <title>{title}</title>\n <path\n d=\"M85.11 4.18a14.27 14.27 0 0 0-19.83-.34 1.38 1.38 0 0 0 0 2L67 7.6a1.36 1.36 0 0 0 1.78.12A8.18 8.18 0 0 1 79.5 20.06C68.17 31.38 53.05-.36 18.73 16a4.65 4.65 0 0 0-2 6.54l5.89 10.17a4.64 4.64 0 0 0 6.3 1.73l.14-.08-.11.08L31.53 33a60.29 60.29 0 0 0 8.22-6.13 1.44 1.44 0 0 1 1.87-.06 1.34 1.34 0 0 1 .06 2A61.61 61.61 0 0 1 33 35.34h-.09L30.3 36.8a7.34 7.34 0 0 1-3.61.94 7.45 7.45 0 0 1-6.47-3.71l-5.57-9.61C4 32-2.54 46.56 1 65a1.36 1.36 0 0 0 1.33 1.11h6.28A1.36 1.36 0 0 0 10 64.87a9.29 9.29 0 0 1 18.42 0 1.35 1.35 0 0 0 1.34 1.19h6.14a1.36 1.36 0 0 0 1.34-1.19 9.29 9.29 0 0 1 18.42 0A1.36 1.36 0 0 0 57 66.06h6.1a1.36 1.36 0 0 0 1.36-1.34c.14-8.6 2.46-18.48 9.07-23.43C96.43 24.16 90.41 9.48 85.11 4.18ZM61.76 30.05l-4.37-2.19a2.74 2.74 0 1 1 4.37 2.2Z\"\n fill={elephantColor}\n />\n </svg>\n);\n","import React from 'react';\n\nexport const KubernetesIcon = ({\n className = '',\n title = 'Kubernetes',\n ...props\n}) => (\n <svg\n xmlns='http://www.w3.org/2000/svg'\n xmlnsXlink='http://www.w3.org/1999/xlink'\n viewBox='0 0 723 702'\n className={`eclipse-jkube-icon ${className}`}\n {...props}\n >\n <title>{title}</title>\n <path\n d='M358.986 10.06a46.725 46.342 0 00-17.906 4.531L96.736 131.341a46.725 46.342 0 00-25.28 31.438l-60.282 262.25a46.725 46.342 0 006.344 35.531 46.725 46.342 0 002.656 3.688l169.125 210.28a46.725 46.342 0 0036.531 17.438l271.219-.062a46.725 46.342 0 0036.531-17.406l169.063-210.313a46.725 46.342 0 009.03-39.219L651.3 162.716a46.725 46.342 0 00-25.281-31.437L381.643 14.59a46.725 46.342 0 00-22.657-4.53z'\n fill='#326ce5'\n />\n <path\n d='M361.408 99.307c-8.077.001-14.626 7.276-14.625 16.25 0 .138.028.27.03.406-.011 1.22-.07 2.689-.03 3.75.192 5.176 1.32 9.138 2 13.907 1.23 10.206 2.26 18.667 1.625 26.531-.62 2.965-2.803 5.677-4.75 7.562l-.344 6.188a190.337 190.337 0 00-26.438 4.062c-37.974 8.623-70.67 28.184-95.562 54.594a245.167 245.167 0 01-5.281-3.75c-2.612.353-5.25 1.159-8.688-.844-6.545-4.405-12.506-10.486-19.719-17.812-3.305-3.504-5.698-6.841-9.625-10.219-.891-.767-2.252-1.804-3.25-2.594-3.07-2.447-6.69-3.724-10.187-3.843-4.496-.154-8.824 1.604-11.656 5.156-5.036 6.315-3.424 15.968 3.593 21.562.071.057.147.101.219.157.964.781 2.145 1.783 3.031 2.437 4.167 3.077 7.973 4.652 12.125 7.094 8.747 5.402 15.999 9.88 21.75 15.281 2.246 2.394 2.639 6.613 2.938 8.438l4.687 4.187c-25.093 37.764-36.707 84.41-29.843 131.938l-6.125 1.781c-1.615 2.085-3.896 5.365-6.282 6.344-7.525 2.37-15.994 3.24-26.218 4.312-4.8.4-8.943.161-14.032 1.125-1.12.212-2.68.619-3.906.906l-.125.032c-.067.015-.155.048-.219.062-8.62 2.083-14.157 10.006-12.375 17.813 1.783 7.808 10.203 12.556 18.875 10.687.063-.014.154-.017.219-.031.098-.022.184-.07.281-.094 1.21-.265 2.724-.56 3.782-.843 5.003-1.34 8.626-3.308 13.125-5.032 9.676-3.47 17.691-6.37 25.5-7.5 3.26-.255 6.697 2.012 8.406 2.969l6.375-1.094c14.67 45.483 45.414 82.245 84.344 105.313l-2.657 6.375c.958 2.475 2.014 5.824 1.3 8.27-2.838 7.36-7.7 15.13-13.237 23.792-2.681 4.002-5.425 7.108-7.844 11.688-.579 1.096-1.316 2.78-1.875 3.937-3.759 8.043-1.002 17.305 6.219 20.782 7.266 3.497 16.284-.192 20.187-8.25.006-.012.026-.02.031-.032.004-.009-.004-.022 0-.03.556-1.143 1.344-2.645 1.813-3.72 2.072-4.747 2.762-8.815 4.219-13.406 3.87-9.72 5.995-19.919 11.322-26.274 1.459-1.74 3.837-2.41 6.303-3.07l3.312-6c33.938 13.027 71.927 16.523 109.875 7.907a189.77 189.77 0 0025.094-7.563c.93 1.651 2.661 4.826 3.125 5.625 2.506.815 5.24 1.236 7.469 4.531 3.985 6.81 6.71 14.865 10.031 24.594 1.457 4.591 2.178 8.66 4.25 13.406.472 1.082 1.256 2.605 1.812 3.75 3.895 8.085 12.943 11.787 20.22 8.282 7.219-3.478 9.979-12.74 6.218-20.782-.559-1.158-1.327-2.841-1.906-3.937-2.42-4.58-5.163-7.655-7.844-11.656-5.537-8.662-10.13-15.858-12.969-23.22-1.187-3.796.2-6.157 1.125-8.624-.554-.635-1.739-4.22-2.437-5.906 40.457-23.889 70.298-62.022 84.312-106.063 1.893.298 5.182.88 6.25 1.094 2.2-1.45 4.222-3.344 8.188-3.031 7.808 1.129 15.823 4.03 25.5 7.5 4.498 1.723 8.121 3.723 13.125 5.062 1.057.283 2.572.547 3.781.813.097.023.183.071.281.093.066.015.156.017.219.032 8.672 1.866 17.094-2.88 18.875-10.688 1.78-7.807-3.754-15.732-12.375-17.812-1.254-.286-3.032-.77-4.25-1-5.09-.964-9.231-.727-14.031-1.125-10.225-1.072-18.694-1.943-26.219-4.313-3.068-1.19-5.251-4.841-6.313-6.344l-5.906-1.718c3.062-22.155 2.237-45.212-3.062-68.282-5.349-23.284-14.8-44.58-27.407-63.343 1.515-1.378 4.377-3.911 5.188-4.657.237-2.624.033-5.375 2.75-8.281 5.751-5.4 13.003-9.879 21.75-15.281 4.152-2.443 7.99-4.017 12.156-7.094.942-.696 2.23-1.798 3.219-2.594 7.015-5.596 8.63-15.248 3.594-21.562-5.037-6.314-14.797-6.91-21.813-1.313-.998.791-2.353 1.823-3.25 2.594-3.926 3.378-6.351 6.714-9.656 10.219-7.213 7.326-13.174 13.438-19.719 17.844-2.836 1.65-6.99 1.08-8.875.968l-5.562 3.969c-31.72-33.26-74.905-54.525-121.406-58.656-.13-1.949-.3-5.471-.344-6.532-1.904-1.821-4.204-3.376-4.781-7.312-.637-7.864.426-16.325 1.656-26.531.679-4.769 1.807-8.73 2-13.907.044-1.176-.027-2.884-.031-4.156-.001-8.974-6.548-16.25-14.625-16.25zm-18.313 113.438l-4.344 76.718-.312.157c-.292 6.863-5.94 12.343-12.875 12.343-2.841 0-5.463-.912-7.594-2.468l-.125.062-62.906-44.594c19.333-19.01 44.063-33.06 72.562-39.53a154.125 154.125 0 0115.594-2.688zm36.656 0c33.274 4.092 64.045 19.159 87.625 42.25l-62.5 44.312-.218-.093c-5.548 4.051-13.364 3.046-17.688-2.375a12.807 12.807 0 01-2.812-7.47l-.063-.03zM232.126 283.62l57.438 51.375-.063.312c5.185 4.507 5.95 12.328 1.625 17.75a12.892 12.892 0 01-6.687 4.406l-.063.25-73.625 21.25c-3.747-34.265 4.329-67.573 21.375-95.343zm258.157.03c8.534 13.833 14.996 29.283 18.843 46.032 3.801 16.548 4.755 33.067 3.188 49.031l-74-21.312-.063-.313c-6.626-1.81-10.699-8.551-9.156-15.312a12.786 12.786 0 014.094-6.844l-.031-.156 57.125-51.125zm-140.657 55.313h23.532l14.625 18.282-5.25 22.812-21.125 10.156-21.188-10.187-5.25-22.813zm75.438 62.563c1-.05 1.995.04 2.969.219l.125-.157 76.156 12.875c-11.146 31.314-32.473 58.44-60.969 76.594l-29.562-71.406.093-.125c-2.715-6.31.002-13.71 6.25-16.719 1.6-.77 3.271-1.197 4.938-1.281zm-127.906.312c5.811.082 11.024 4.116 12.375 10.032.632 2.77.324 5.513-.72 7.937l.22.281-29.25 70.688c-27.348-17.549-49.13-43.824-60.782-76.063l75.5-12.812.125.156c.845-.155 1.701-.23 2.532-.219zm63.78 30.97a12.764 12.764 0 016.032 1.28c2.56 1.233 4.537 3.174 5.781 5.5h.282l37.218 67.25a154.256 154.256 0 01-14.875 4.157c-28.464 6.463-56.838 4.504-82.53-4.25l37.124-67.125h.063a12.91 12.91 0 0110.906-6.813z'\n style={{\n textIndent: 0,\n textAlign: 'start',\n lineHeight: 'normal',\n textTransform: 'none',\n blockProgression: 'tb',\n marker: 'none',\n }}\n fontWeight={400}\n color='#000'\n fill='#fff'\n stroke='#fff'\n strokeWidth={0.25}\n overflow='visible'\n />\n </svg>\n);\n","import React, {useId} from 'react';\n\nexport const MavenIcon = ({\n className = '',\n title = 'Apache Maven',\n ...props\n}) => {\n const idPrefix = useId().replace(/:/g, '');\n return (\n <svg\n xmlns='http://www.w3.org/2000/svg'\n xmlnsXlink='http://www.w3.org/1999/xlink'\n viewBox='0 0 32 32'\n className={`eclipse-jkube-icon ${className}`}\n {...props}\n >\n <title>{title}</title>\n <defs>\n <linearGradient\n id={`${idPrefix}-c`}\n x1={-7274.8}\n x2={-7243.872}\n y1={2082.507}\n y2={2046.343}\n gradientTransform='matrix(-.023 -.116 -.116 .023 79.68 -889.484)'\n gradientUnits='userSpaceOnUse'\n >\n <stop offset={0} stopColor='#f69923' />\n <stop offset={0.312} stopColor='#f79a23' />\n <stop offset={0.838} stopColor='#e97826' />\n </linearGradient>\n <linearGradient\n id={`${idPrefix}-a`}\n x1={-7503.689}\n x2={-7283.036}\n y1={2086.595}\n y2={2086.595}\n gradientTransform='matrix(-.023 -.116 -.116 .023 79.68 -889.484)'\n gradientUnits='userSpaceOnUse'\n >\n <stop offset={0.323} stopColor='#9e2064' />\n <stop offset={0.63} stopColor='#c92037' />\n <stop offset={0.751} stopColor='#cd2335' />\n <stop offset={1} stopColor='#e97826' />\n </linearGradient>\n <linearGradient\n id={`${idPrefix}-b`}\n x1={-7477.053}\n x2={-7345.566}\n y1={2064.42}\n y2={2064.42}\n gradientTransform='matrix(-.023 -.116 -.116 .023 79.68 -889.484)'\n gradientUnits='userSpaceOnUse'\n >\n <stop offset={0} stopColor='#282662' />\n <stop offset={0.095} stopColor='#662e8d' />\n <stop offset={0.788} stopColor='#9f2064' />\n <stop offset={0.949} stopColor='#cd2032' />\n </linearGradient>\n <linearGradient\n xlinkHref={`#${idPrefix}-a`}\n id={`${idPrefix}-d`}\n x1={-7491.296}\n x2={-7270.643}\n y1={2088.633}\n y2={2088.633}\n />\n <linearGradient\n xlinkHref={`#${idPrefix}-b`}\n id={`${idPrefix}-e`}\n x1={-7475.203}\n x2={-7359.244}\n y1={2085.61}\n y2={2085.61}\n />\n <linearGradient\n xlinkHref={`#${idPrefix}-a`}\n id={`${idPrefix}-f`}\n x1={-7491.296}\n x2={-7270.643}\n y1={2065.799}\n y2={2065.799}\n />\n <linearGradient\n xlinkHref={`#${idPrefix}-a`}\n id={`${idPrefix}-g`}\n x1={-7504.984}\n x2={-7284.331}\n y1={2066.905}\n y2={2066.905}\n />\n <linearGradient\n xlinkHref={`#${idPrefix}-a`}\n id={`${idPrefix}-h`}\n x1={-7491.296}\n x2={-7270.643}\n y1={2058.959}\n y2={2058.959}\n />\n <linearGradient\n xlinkHref={`#${idPrefix}-a`}\n id={`${idPrefix}-i`}\n x1={-7491.296}\n x2={-7270.643}\n y1={2059.762}\n y2={2059.762}\n />\n <linearGradient\n xlinkHref={`#${idPrefix}-c`}\n id={`${idPrefix}-j`}\n x1={-8307.632}\n x2={-8276.704}\n y1={2040.008}\n y2={2003.844}\n gradientTransform='matrix(.074 -.112 -.112 -.074 864.083 -775.51)'\n />\n <linearGradient\n xlinkHref={`#${idPrefix}-a`}\n id={`${idPrefix}-k`}\n x1={-8536.521}\n x2={-8315.868}\n y1={2044.096}\n y2={2044.096}\n gradientTransform='matrix(.074 -.112 -.112 -.074 864.083 -775.51)'\n />\n <linearGradient\n xlinkHref={`#${idPrefix}-b`}\n id={`${idPrefix}-l`}\n x1={-8509.885}\n x2={-8378.397}\n y1={2021.921}\n y2={2021.921}\n gradientTransform='matrix(.074 -.112 -.112 -.074 864.083 -775.51)'\n />\n <linearGradient\n xlinkHref={`#${idPrefix}-a`}\n id={`${idPrefix}-m`}\n x1={-8524.128}\n x2={-8303.475}\n y1={2046.134}\n y2={2046.134}\n gradientTransform='matrix(.074 -.112 -.112 -.074 864.083 -775.51)'\n />\n <linearGradient\n xlinkHref={`#${idPrefix}-b`}\n id={`${idPrefix}-n`}\n x1={-8508.035}\n x2={-8392.076}\n y1={2043.111}\n y2={2043.111}\n gradientTransform='matrix(.074 -.112 -.112 -.074 864.083 -775.51)'\n />\n <linearGradient\n xlinkHref={`#${idPrefix}-a`}\n id={`${idPrefix}-o`}\n x1={-8524.128}\n x2={-8303.475}\n y1={2023.3}\n y2={2023.3}\n gradientTransform='matrix(.074 -.112 -.112 -.074 864.083 -775.51)'\n />\n <linearGradient\n xlinkHref={`#${idPrefix}-a`}\n id={`${idPrefix}-p`}\n x1={-8537.816}\n x2={-8317.163}\n y1={2024.407}\n y2={2024.407}\n gradientTransform='matrix(.074 -.112 -.112 -.074 864.083 -775.51)'\n />\n <linearGradient\n xlinkHref={`#${idPrefix}-a`}\n id={`${idPrefix}-q`}\n x1={-8524.128}\n x2={-8303.475}\n y1={2016.46}\n y2={2016.46}\n gradientTransform='matrix(.074 -.112 -.112 -.074 864.083 -775.51)'\n />\n <linearGradient\n xlinkHref={`#${idPrefix}-a`}\n id={`${idPrefix}-r`}\n x1={-8524.128}\n x2={-8303.475}\n y1={2017.263}\n y2={2017.263}\n gradientTransform='matrix(.074 -.112 -.112 -.074 864.083 -775.51)'\n />\n </defs>\n <path\n d='M5.976 2.533a9.539 9.539 0 0 0-.4 2.655l1.427.691a17.928 17.928 0 0 1 .1-2.541 1.16 1.16 0 0 1 .011-.092c0 .031-.009.061-.011.092A15.939 15.939 0 0 0 7.1 5.845a27.79 27.79 0 0 0 2.114-2 3.041 3.041 0 0 0-1.593-1.701s-1.264-.51-1.645.389Z'\n style={{\n fill: `url(#${idPrefix}-c)`,\n }}\n />\n <path\n d='M9.688 9.722a.018.018 0 0 0 .012-.013l-.08.071c0 .007-.009.013-.01.019ZM10.562 12.19c-.038.046-.083.091-.128.136a2.32 2.32 0 0 0 .128-.136ZM9.741 19.776c0-.021-.014-.044-.018-.065l-.355-1.3a104.01 104.01 0 0 1-1.006-4.141c-.077-.359-.152-.707-.221-1.047a17.987 17.987 0 0 1-.066-.336c-.042-.222-.086-.436-.126-.647l-.109-.575c-.011-.064-.022-.128-.034-.186l-.006-.035-.069.062-.142-.07c0 .015.005.032.01.047.047.285.1.573.152.863.03.164.063.332.093.5.088.465.181.926.282 1.393s.2.94.308 1.4.214.914.324 1.368.222.9.338 1.346a66.284 66.284 0 0 0 .45 1.674c.1.366.2.721.3 1.073l.229.115.076-.068a.069.069 0 0 0-.009-.029c-.149-.45-.277-.903-.401-1.342Z'\n style={{\n fill: 'none',\n }}\n />\n <path\n d='M10.924 13.495a5.867 5.867 0 0 1-.206.211c.036-.033.073-.072.107-.108a1.212 1.212 0 0 0 .099-.103Z'\n style={{\n fill: '#be202e',\n }}\n />\n <path\n d='M10.924 13.495a5.867 5.867 0 0 1-.206.211c.036-.033.073-.072.107-.108a1.212 1.212 0 0 0 .099-.103Z'\n style={{\n fill: '#be202e',\n opacity: 0.3499999940395355,\n isolation: 'isolate',\n }}\n />\n <path\n d='M10.4 12.356c.012-.009.021-.021.032-.03.045-.045.09-.09.128-.136-.05.055-.107.108-.161.166Z'\n style={{\n fill: '#be202e',\n }}\n />\n <path\n d='M10.4 12.356c.012-.009.021-.021.032-.03.045-.045.09-.09.128-.136-.05.055-.107.108-.161.166Z'\n style={{\n fill: '#be202e',\n opacity: 0.3499999940395355,\n isolation: 'isolate',\n }}\n />\n <path\n d='M7.38 10.092q-.1-.712-.18-1.4c-.055-.477-.1-.945-.131-1.408 0-.028-.005-.056 0-.081A22.637 22.637 0 0 1 7 5.878l-1.425-.687c0 .086-.01.175-.013.269-.014.341-.025.7-.028 1.085 0 .43 0 .878.008 1.347.01.432.028.882.051 1.34.023.392.049.788.081 1.192v.046l1.906.965c-.063-.451-.133-.899-.2-1.343Z'\n style={{\n fill: `url(#${idPrefix}-a)`,\n }}\n />\n <path\n d='M10.2 21.362c.1.356.212.723.328 1.095v.015c.016.054.029.105.049.157.076.251.149.474.307.984a1.927 1.927 0 0 1 1.094.262 1.563 1.563 0 0 0-1.041-.566 3.349 3.349 0 0 0 1.827-2.977 4.338 4.338 0 0 0-.047-.326 1.347 1.347 0 0 1-.766 1.152 3.766 3.766 0 0 0 .61-2.373c-.015-.193-.04-.4-.075-.619a3.056 3.056 0 0 1-1.772 2.462l-.578.532c.021.067.039.133.064.202Z'\n style={{\n fill: `url(#${idPrefix}-b)`,\n }}\n />\n <path\n d='m9.453 19.735-.365-1.374a118.558 118.558 0 0 1-.662-2.714c-.106-.457-.21-.934-.308-1.4s-.19-.931-.282-1.393a29.232 29.232 0 0 1-.093-.5c-.053-.286-.1-.574-.152-.863a.158.158 0 0 0-.01-.047l-1.895-.967a.679.679 0 0 1 .007.091c.038.429.075.865.126 1.3s.106.89.172 1.341c.056.38.116.757.179 1.138l.041.228a27.47 27.47 0 0 0 .639 2.707c.082.276.163.542.246.794.072.212.15.425.225.635.181.493.382.971.6 1.438l1.915.97c-.1-.352-.2-.71-.3-1.073l-.083-.311Z'\n style={{\n fill: `url(#${idPrefix}-d)`,\n }}\n />\n <path\n d='M7.947 20.208a14.86 14.86 0 0 0 .881 1.627c.011.016.022.038.033.054a3.864 3.864 0 0 0-1.46-.113 5.37 5.37 0 0 1 2.353 1.371 2.468 2.468 0 0 1-1.112.558 2.46 2.46 0 0 0 1.22-.108 3 3 0 0 0-.742 1.447 3.084 3.084 0 0 1 1.205-1.276 139.477 139.477 0 0 0 2.034 6.14.577.577 0 0 0 .09-.541 131.28 131.28 0 0 1-2.095-6.468c-.03-.1-.056-.2-.089-.3l-.025-.084q-.16-.55-.326-1.132c-.024-.09-.05-.174-.074-.265l-1.915-.97a.357.357 0 0 0 .022.06Z'\n style={{\n fill: `url(#${idPrefix}-e)`,\n }}\n />\n <path\n d='m7.806 11.476.034.186c.037.19.07.382.109.575.04.211.084.426.126.647.021.111.042.222.066.336.069.34.144.688.221 1.047.1.441.2.894.311 1.366.1.446.218.911.336 1.384.115.451.231.913.359 1.391.112.423.233.858.355 1.3 0 .021.014.044.018.065.123.439.252.892.386 1.353a.069.069 0 0 0 .009.029l.578-.532c-.015 0-.026.013-.045.021a5.547 5.547 0 0 0 1.408-3.114 7.47 7.47 0 0 0-.018-1.737 11.925 11.925 0 0 0-.278-1.486 19.358 19.358 0 0 0-.425-1.456 2.891 2.891 0 0 1-.441.637l-.1.11c-.033.037-.07.069-.107.108a3.377 3.377 0 0 0 .416-2.507 3.176 3.176 0 0 1-.572.991c-.038.046-.083.091-.128.136-.012.009-.021.021-.036.033a3.52 3.52 0 0 0 .371-.814 1.509 1.509 0 0 0 .043-.17c.02-.087.034-.175.047-.263.005-.058.014-.112.019-.171a2.461 2.461 0 0 0 0-.413c0-.046 0-.087-.011-.13-.011-.064-.019-.124-.031-.182-.046-.267-.1-.5-.149-.7-.026-.1-.05-.192-.076-.275-.012-.033-.018-.065-.03-.1-.031-.091-.056-.175-.084-.245a2.452 2.452 0 0 0-.105-.242.532.532 0 0 1-.042.115 3.749 3.749 0 0 1-.65.934l.533-.487-.536.484a.018.018 0 0 0-.009.013A1.082 1.082 0 0 0 9.6 9.8c0-.007.009-.013.01-.019l-1.82 1.665c.015.013.017.023.016.03Z'\n style={{\n fill: `url(#${idPrefix}-f)`,\n }}\n />\n <path\n d='M7.1 5.845c.022.4.057.848.1 1.344a.485.485 0 0 0 .009.078c.041.433.094.9.162 1.409.058.439.122.9.2 1.4.065.433.145.886.227 1.367l1.82-1.667a2.987 2.987 0 0 0 .457-1.647c0-.143-.011-.293-.022-.447a14.324 14.324 0 0 0-.158-1.432 12.46 12.46 0 0 0-.271-1.287 6.825 6.825 0 0 0-.209-.653 7.964 7.964 0 0 0-.2-.454A28.8 28.8 0 0 1 7.1 5.845Z'\n style={{\n fill: `url(#${idPrefix}-g)`,\n }}\n />\n <path\n d='M10.827 13.6c-.033.037-.07.069-.107.108a1.391 1.391 0 0 1 .107-.108Z'\n style={{\n fill: '#be202e',\n }}\n />\n <path\n d='M10.827 13.6c-.033.037-.07.069-.107.108a1.391 1.391 0 0 1 .107-.108Z'\n style={{\n fill: '#be202e',\n opacity: 0.3499999940395355,\n isolation: 'isolate',\n }}\n />\n <path\n d='M10.827 13.6c-.033.037-.07.069-.107.108a1.391 1.391 0 0 1 .107-.108Z'\n style={{\n fill: `url(#${idPrefix}-h)`,\n }}\n />\n <path\n d='M10.4 12.359c.012-.009.021-.021.036-.033-.012.009-.021.021-.036.033Z'\n style={{\n fill: '#be202e',\n }}\n />\n <path\n d='M10.4 12.359c.012-.009.021-.021.036-.033-.012.009-.021.021-.036.033Z'\n style={{\n fill: '#be202e',\n opacity: 0.3499999940395355,\n isolation: 'isolate',\n }}\n />\n <path\n d='M10.4 12.359c.012-.009.021-.021.036-.033-.012.009-.021.021-.036.033Z'\n style={{\n fill: `url(#${idPrefix}-i)`,\n }}\n />\n <path\n d='M24.627 2.891A10.789 10.789 0 0 0 22.2 4.713l.6 1.69a20.278 20.278 0 0 1 2.1-1.965l.082-.066c-.026.024-.056.042-.082.066a18.028 18.028 0 0 0-2 2.013 31.432 31.432 0 0 0 3.288.072 3.44 3.44 0 0 0 .071-2.639s-.612-1.414-1.632-.993Z'\n style={{\n fill: `url(#${idPrefix}-j)`,\n }}\n />\n <path\n d='M21.9 11.627a.02.02 0 0 0 .017 0l-.121-.007c-.006 0-.017 0-.023.008ZM20.645 14.308c-.068.007-.14.007-.212.008.073-.001.145-.001.212-.008ZM13.958 19.763c.014-.02.023-.046.037-.067.255-.456.5-.9.75-1.331a125.537 125.537 0 0 1 1.645-2.781 82.311 82.311 0 0 1 1.703-2.687l.413-.621c.127-.186.248-.368.369-.55.042-.06.084-.121.12-.176l.021-.03h-.1l-.058-.169c-.008.015-.021.03-.029.046-.189.266-.378.538-.563.815-.106.156-.213.318-.325.479-.3.444-.591.889-.879 1.346s-.584.918-.867 1.375-.554.905-.826 1.359-.537.9-.8 1.352a75.948 75.948 0 0 0-.973 1.713c-.21.374-.413.738-.611 1.1l.093.274.116.006a.078.078 0 0 0 .016-.031c.242-.504.499-.971.748-1.422Z'\n style={{\n fill: 'none',\n }}\n />\n <path\n d='M19.9 15.646c-.112.006-.223.006-.334.006h.172a1.371 1.371 0 0 0 .162-.006Z'\n style={{\n fill: '#be202e',\n }}\n />\n <path\n d='M19.9 15.646c-.112.006-.223.006-.334.006h.172a1.371 1.371 0 0 0 .162-.006Z'\n style={{\n fill: '#be202e',\n opacity: 0.3499999940395355,\n isolation: 'isolate',\n }}\n />\n <path\n d='M20.384 14.314h.05c.072 0 .144 0 .212-.008-.084 0-.172 0-.261.006Z'\n style={{\n fill: '#be202e',\n }}\n />\n <path\n d='M20.384 14.314h.05c.072 0 .144 0 .212-.008-.084 0-.172 0-.261.006Z'\n style={{\n fill: '#be202e',\n opacity: 0.3499999940395355,\n isolation: 'isolate',\n }}\n />\n <path\n d='M19.751 10.091q.486-.652.968-1.272a35.82 35.82 0 0 1 2.073-2.423l-.6-1.685c-.071.067-.147.134-.224.205-.283.263-.579.547-.884.851-.344.343-.7.707-1.064 1.091-.335.356-.678.732-1.023 1.119-.293.334-.587.673-.882 1.024l-.034.039.767 2.291c.305-.413.604-.831.903-1.24Z'\n style={{\n fill: `url(#${idPrefix}-k)`,\n }}\n />\n <path\n d='M13.063 21.4c-.2.37-.4.75-.605 1.142 0 .005-.007.01-.008.015-.03.057-.06.108-.085.165-.138.262-.256.5-.534 1.036a2.18 2.18 0 0 1 .673 1.08 1.768 1.768 0 0 0-.388-1.282c1.558.3 2.973.1 3.836-.945.075-.094.15-.194.221-.3a1.524 1.524 0 0 1-1.532.318 4.26 4.26 0 0 0 2.376-1.429c.141-.168.284-.352.431-.558a3.456 3.456 0 0 1-3.383.574l-.888-.031c-.038.076-.077.143-.114.215Z'\n style={{\n fill: `url(#${idPrefix}-l)`,\n }}\n />\n <path\n d='M13.758 19.5c.262-.461.529-.926.8-1.4.26-.45.525-.9.8-1.352s.549-.906.826-1.359.573-.919.867-1.375.587-.9.879-1.346c.107-.162.213-.318.325-.479.184-.272.374-.544.563-.815.008-.015.021-.03.029-.046l-.757-2.284a.768.768 0 0 1-.067.079c-.31.376-.626.756-.934 1.149s-.622.8-.927 1.217c-.257.35-.508.7-.76 1.058-.049.07-.1.146-.148.217a29.335 29.335 0 0 0-2.069 3.522c-.111.228-.217.461-.323.69-.246.54-.464 1.085-.661 1.633l.771 2.3c.2-.365.406-.728.611-1.1.055-.099.117-.201.175-.309Z'\n style={{\n fill: `url(#${idPrefix}-m)`,\n }}\n />\n <path\n d='M12.17 18.686a16.808 16.808 0 0 0-.583 2.01c0 .022-.013.048-.016.07a4.37 4.37 0 0 0-1.086-1.251 6.074 6.074 0 0 1 .805 2.973 2.792 2.792 0 0 1-1.339-.435 2.782 2.782 0 0 0 1.068.883 3.4 3.4 0 0 0-1.747.575 3.488 3.488 0 0 1 1.984-.069C10.2 25.432 9.12 27.645 8.015 30a.652.652 0 0 0 .5-.364c.2-.426 1.51-3.226 3.453-6.872.054-.1.113-.205.168-.314l.046-.087q.308-.57.637-1.17l.151-.272v-.005l-.771-2.3a.4.4 0 0 0-.029.07Z'\n style={{\n fill: `url(#${idPrefix}-n)`,\n }}\n />\n <path\n d='m18.994 11.544-.12.176c-.121.182-.247.363-.369.55s-.271.409-.413.621c-.071.106-.142.212-.214.323-.215.329-.431.669-.654 1.018a109.502 109.502 0 0 0-1.664 2.727c-.266.454-.539.919-.816 1.4-.246.43-.494.875-.75 1.331-.014.02-.023.046-.037.067-.249.451-.506.918-.765 1.4a.078.078 0 0 0-.016.031l.888.031c-.015-.008-.032-.01-.053-.019a6.274 6.274 0 0 0 3.607-1.389 8.449 8.449 0 0 0 1.368-1.411 13.487 13.487 0 0 0 .956-1.417c.272-.459.546-.962.815-1.51a3.269 3.269 0 0 1-.861.162l-.168.009h-.172a3.82 3.82 0 0 0 2.326-1.688 3.592 3.592 0 0 1-1.248.344c-.068.007-.14.007-.212.008h-.055a3.981 3.981 0 0 0 .945-.36 1.707 1.707 0 0 0 .17-.1c.086-.054.166-.114.247-.174l.151-.122a2.784 2.784 0 0 0 .326-.335c.034-.039.066-.073.094-.114.042-.06.083-.115.119-.171a10.09 10.09 0 0 0 .597-.966c.016-.036.037-.067.054-.1.048-.1.094-.186.127-.264a2.773 2.773 0 0 0 .107-.278.6.6 0 0 1-.125.059 4.24 4.24 0 0 1-1.265.236l.816.031-.816-.031a.02.02 0 0 0-.017 0 1.224 1.224 0 0 0-.128 0c.006 0 .017 0 .023-.008l-2.79-.1c.005.018-.002.028-.008.033Z'\n style={{\n fill: `url(#${idPrefix}-o)`,\n }}\n />\n <path\n d='M22.9 6.452c-.3.339-.628.728-.986 1.164a.548.548 0 0 0-.055.07c-.311.381-.638.8-.989 1.263-.3.4-.62.824-.954 1.29-.292.4-.587.829-.9 1.281l2.79.1a3.379 3.379 0 0 0 1.677-.962c.111-.117.224-.244.338-.377A16.2 16.2 0 0 0 24.828 9a14.093 14.093 0 0 0 .8-1.251 7.72 7.72 0 0 0 .351-.691c.077-.183.141-.356.2-.525a32.58 32.58 0 0 1-3.279-.081Z'\n style={{\n fill: `url(#${idPrefix}-p)`,\n }}\n />\n <path\n d='M19.738 15.655h-.172a1.573 1.573 0 0 1 .172 0Z'\n style={{\n fill: '#be202e',\n }}\n />\n <path\n d='M19.738 15.655h-.172a1.573 1.573 0 0 1 .172 0Z'\n style={{\n fill: '#be202e',\n opacity: 0.3499999940395355,\n isolation: 'isolate',\n }}\n />\n <path\n d='M19.738 15.655h-.172a1.573 1.573 0 0 1 .172 0Z'\n style={{\n fill: `url(#${idPrefix}-q)`,\n }}\n />\n <path\n d='M20.378 14.313h.055-.055Z'\n style={{\n fill: '#be202e',\n }}\n />\n <path\n d='M20.378 14.313h.055-.055Z'\n style={{\n fill: '#be202e',\n opacity: 0.3499999940395355,\n isolation: 'isolate',\n }}\n />\n <path\n d='M20.378 14.313h.055-.055Z'\n style={{\n fill: `url(#${idPrefix}-r)`,\n }}\n />\n </svg>\n );\n};\n\n","import React from 'react';\n\n\nconst LOGO_HEIGHT = 65.408;\nconst TEXT_HEIGHT = 12.46323375;\n\nexport const OpenShiftIcon = ({\n hideText = false,\n textColor = '#241f21',\n className = '',\n title = 'OpenShift',\n ...props\n}) => {\n let height = LOGO_HEIGHT;\n if (hideText) {\n height -= TEXT_HEIGHT;\n }\n return (\n <svg\n viewBox={`-1.734 -1.734 61.263 ${height}`}\n {...props}\n >\n <path\n d='M54.228 11.987a23.32 23.32 0 00-2.004-3.4l-8.212 2.988a15.351 15.351 0 012.413 3.252l7.803-2.84zM17.925 21.07L9.71 24.059a23.89 23.89 0 00.651 3.893l7.804-2.84a15.271 15.271 0 01-.24-4.042'\n fill='#c22133'\n />\n <path\n d='M36.156 9.66a15.205 15.205 0 014.438 3.16l8.212-2.989a23.35 23.35 0 00-9.17-7.63C27.895-3.276 13.887 1.822 8.414 13.562a23.32 23.32 0 00-2.122 11.74l8.214-2.988a15.19 15.19 0 011.366-5.274C19.43 9.414 28.53 6.104 36.156 9.661M44.916 24.668a15.063 15.063 0 01-1.379 5.274c-3.556 7.629-12.656 10.939-20.282 7.382a15.11 15.11 0 01-4.447-3.155l-8.196 2.983a23.294 23.294 0 009.164 7.634c11.741 5.473 25.746.376 31.221-11.365a23.254 23.254 0 002.115-11.735l-8.196 2.982z'\n fill='#db212e'\n />\n <path\n d='M46.935 14.641l-7.803 2.84a15.311 15.311 0 011.91 8.595l8.196-2.981a23.665 23.665 0 00-2.303-8.454M10.873 27.765l-7.804 2.843a23.758 23.758 0 003.67 7.955l8.195-2.984a15.34 15.34 0 01-4.061-7.814'\n fill='#eb2126'\n />\n <path\n d='M53.038 9.823a22.41 22.41 0 00-.813-1.236l-8.213 2.988c.361.37.694.763 1.011 1.165l8.015-2.917zM17.894 22.719c-.02-.547-.012-1.097.03-1.648L9.71 24.059c.042.527.109 1.05.187 1.57l7.997-2.91z'\n fill='#ad213b'\n />\n <path\n d='M53.112 21.686l-8.197 2.982a14.996 14.996 0 01-.692 3.525l8.921-3.252c.064-1.09.054-2.178-.032-3.255m-42.5 15.467c.632.889 1.33 1.736 2.09 2.536l8.922-3.253a15.164 15.164 0 01-2.816-2.267l-8.195 2.984z'\n fill='#ba2133'\n />\n {!hideText && <path\n d='M52.69 54.532v.74h2.146v6.554h.812v-6.554h2.148v-.74h-5.107zm-4.93.74v2.417h2v.74h-2v3.396h-.812v-7.292h4.283v.738h-3.47zm-3.717-.739h.813v7.294h-.813v-7.294zm-2.904 7.293v-3.439h-3.626v3.439H36.7v-7.294h.813v3.116h3.626v-3.116h.812v7.294h-.812zm-8.667.114c-.99 0-1.876-.427-2.449-1.01l.543-.605c.551.532 1.187.877 1.937.877.97 0 1.574-.48 1.574-1.252 0-.677-.406-1.062-1.74-1.542-1.574-.563-2.105-1.073-2.105-2.125 0-1.168.916-1.866 2.281-1.866.98 0 1.605.292 2.22.782l-.52.635c-.532-.437-1.022-.677-1.75-.677-1.002 0-1.418.5-1.418 1.073 0 .605.27.948 1.73 1.47 1.615.583 2.115 1.125 2.115 2.21 0 1.145-.897 2.03-2.418 2.03m-5.741-.114l-2.678-3.98c-.177-.271-.417-.636-.511-.824 0 .271.021 1.188.021 1.594v3.21h-1.439v-7.294h1.397l2.585 3.855c.177.271.416.636.51.824 0-.271-.02-1.188-.02-1.595v-3.084h1.437v7.294h-1.302zm-11.502 0v-7.294h5.064v1.428h-3.605v1.26h2.095v1.417h-2.095v1.761h3.761v1.428h-5.22zm-4.144-2.584H9.48v2.584H8.02v-7.294h3.19c1.375 0 2.51.761 2.51 2.313 0 1.688-1.124 2.397-2.635 2.397m.073-3.292H9.48v1.875h1.698c.678 0 1.043-.314 1.043-.949s-.418-.926-1.063-.926M3.21 61.94C1.303 61.94 0 60.544 0 58.19c0-2.356 1.324-3.773 3.231-3.773 1.897 0 3.199 1.397 3.199 3.752 0 2.355-1.324 3.771-3.22 3.771m-.01-6.075c-1.021 0-1.699.824-1.699 2.304s.709 2.323 1.73 2.323 1.698-.823 1.698-2.303-.708-2.324-1.729-2.324'\n fill={textColor}\n />}\n </svg>\n );\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {Footer, Header} from './';\n\nimport '../styles/main.scss';\n\nexport const MainLayout = ({\n locale,\n children,\n}) => (\n <div className='eclipse-jkube'>\n <Header locale={locale}/>\n <div className='eclipse-jkube__main'>\n {children}\n </div>\n <Footer locale={locale}/>\n </div>\n);\n\n\nMainLayout.propTypes = {\n locale: PropTypes.string.isRequired,\n children: PropTypes.node.isRequired\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst icons = {\n ApacheCamel: 'cib-apache',\n ApacheKaraf: 'cib-apache',\n Kubernetes: 'cib-kubernetes',\n OpenLiberty: 'cib-java',\n OpenShift: 'cib-redhat',\n Quarkus: 'cib-quarkus',\n Spring: 'cib-spring',\n Thorntail: 'cib-java',\n Vertx: 'cib-eclipseide'\n};\n\nexport const QuickStartCard = ({title, description, technologies, url}) => (\n <div className='quick-start-card' itemScope itemType='https://schema.org/SoftwareSourceCode'>\n <meta itemProp='programmingLanguage' content='Java'/>\n <meta itemProp='codeSampleType' content='full (compile ready) solution'/>\n <meta itemProp='keywords' content={technologies.join(',')} />\n <meta itemProp='name' content={title} />\n <meta itemProp='codeRepository' content={url} />\n <h3 className='quick-start-card__title'>\n <a href={url} itemProp='url'>{title}</a>\n </h3>\n <ul className='quick-start-card__technologies'>\n {technologies.map(tech => (\n <li key={tech} className='quick-start-card__technologies-item'>\n <i className={`quick-start-card__technologies-item-icon ${icons[tech]}`}/>\n {tech}\n </li>\n ))}\n </ul>\n <div className='quick-start-card__description' itemProp='description'>\n {description.split(/[\\n\\r]/).map(l => l.trim()).map((line, idx) => (\n <p key={idx}>{line}</p>\n ))}\n </div>\n <div className='quick-start-card__links'>\n <a href={url}><i className='cib-github' /> GitHub repository</a>\n </div>\n </div>\n);\n\nQuickStartCard.propTypes = {\n title: PropTypes.string.isRequired,\n description: PropTypes.string.isRequired,\n technologies: PropTypes.arrayOf(PropTypes.string).isRequired,\n url: PropTypes.string.isRequired\n};\n","import React from 'react';\nimport {useStaticQuery, graphql} from 'gatsby';\nimport {QuickStartCard} from \"./quickstart-card\";\n\nexport const QuickStartList = () => {\n const {allQuickstart: {nodes}} = useStaticQuery(graphql`\n query {\n allQuickstart {\n nodes {\n id\n artifactId\n name\n description\n technologies\n url\n }\n }\n }\n `);\n return (\n <ul\n className='eclipse-jkube__quickstarts'\n itemScope itemType='https://schema.org/SoftwareApplication'\n >\n <meta itemProp='name' content='Eclipse JKube' />\n <meta itemProp='applicationCategory' content='Developer Tools' />\n <meta itemProp='operatingSystem' content='Linux,Windows,OSX,Mac' />\n <meta itemProp='downloadUrl' content='https://github.com/eclipse-jkube/jkube' />\n {nodes.map(node => (\n <li key={node.artifactId} className='eclipse-jkube__quickstarts-item'>\n <QuickStartCard\n title={node.name}\n description={node.description}\n technologies={node.technologies}\n url={node.url}\n />\n </li>\n ))}\n </ul>\n );\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nexport const Seo = ({title, description}) =>\n <>\n <meta charSet=\"UTF-8\" />\n <title>{title}</title>\n <meta name=\"description\" content={description} />\n </>;\n\nSeo.propTypes = {\n title: PropTypes.string.isRequired,\n description: PropTypes.string.isRequired,\n};\n","import React, {useState} from 'react';\nimport PropTypes from 'prop-types';\n\nimport '../styles/components/tabs.scss';\n\nconst baseClass = 'eclipse-jkube-tabs';\n\nexport const TabContainer = ({children = []}) => {\n const tabs = Array.isArray(children) ? children : [children];\n const [activeTab, activateTab] = useState(tabs[0].props.id);\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__tablist`} role='tablist'>\n {tabs.map((tab, idx) => {\n const selected = tab.props.id === activeTab;\n return (\n <button\n key={tab.props.id}\n id={`tab-${tab.props.id}`}\n className={`${baseClass}__tab ${selected ? `${baseClass}__tab--selected` : ''}`}\n onClick={() => activateTab(tab.props.id)}\n aria-selected={selected}\n aria-controls={`tabpanel-${tab.props.id}`}\n role='tab'\n >\n <span className={`${baseClass}__tab-title ${baseClass}__tab-title--lg`}>{tab.props.title}</span>\n <span className={`${baseClass}__tab-title ${baseClass}__tab-title--sm`}>{tab.props.titleCompact ?? tab.props.title}</span>\n </button>\n );\n })}\n </div>\n {tabs.map(tab => {\n const hidden = tab.props.id !== activeTab;\n const stateClass = hidden ? `${baseClass}__tabpanel--hidden` : `${baseClass}__tabpanel--active`;\n return (\n <div\n key={tab.props.id}\n id={`tabpanel-${tab.props.id}`}\n aria-labelledby={`tab-${tab.props.id}`}\n className={`${baseClass}__tabpanel ${stateClass}`}\n hidden={hidden}\n role='tabpanel'\n >\n {tab}\n </div>\n );\n })}\n </div>\n );\n};\n\nexport const Tab =({children}) => {\n return (\n <div className={`${baseClass}__tabpanel-content`}>\n {children}\n </div>\n );\n}\n\nTabContainer.propTypes = {\n children: PropTypes.oneOfType([\n PropTypes.shape({\n type: PropTypes.oneOf([Tab])\n }),\n PropTypes.arrayOf(PropTypes.shape({\n type: PropTypes.oneOf([Tab])\n })),\n PropTypes.shape({\n props: PropTypes.shape({\n id: PropTypes.string.isRequired,\n title: PropTypes.oneOfType([\n PropTypes.string, PropTypes.node\n ]).isRequired,\n titleCompact: PropTypes.oneOfType([\n PropTypes.string, PropTypes.node\n ])\n })\n }),\n PropTypes.arrayOf(PropTypes.shape({\n props: PropTypes.shape({\n id: PropTypes.string.isRequired,\n title: PropTypes.oneOfType([\n PropTypes.string, PropTypes.node\n ]).isRequired,\n titleCompact: PropTypes.oneOfType([\n PropTypes.string, PropTypes.node\n ])\n })\n }))\n ]).isRequired\n};\n\nTab.propTypes = {\n id: PropTypes.string.isRequired,\n title: PropTypes.oneOfType([\n PropTypes.string, PropTypes.node\n ]).isRequired\n};\n","import React, {useState} from 'react';\nimport PropTypes from 'prop-types';\n\nimport '../styles/components/tag.scss';\n\nconst baseClass = 'eclipse-jkube-tag';\n\nexport const Tag =({\n color,\n backgroundColor,\n children\n}) => {\n const props = {\n className: baseClass\n };\n props.style = {};\n if (color) {\n props.style.color = color;\n }\n if (backgroundColor) {\n props.style.backgroundColor = backgroundColor;\n }\n return (\n <span {...props}>{children}</span>\n );\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport '../styles/components/youtube.scss';\n\nexport const YouTube = ({\n videoId,\n start,\n className,\n width = 560,\n height = 315\n}) => {\n let src = `https://www.youtube.com/embed/${videoId}`;\n if (start) {\n src += `?start=${start}`;\n }\n return (\n <div>\n <iframe\n src={src}\n className={`youtube-video ${className ?? ''}`} width={width} height={height} frameBorder=\"0\"\n allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\"\n allowFullScreen=\"allowfullscreen\"\n />\n </div>\n );\n};\n\nYouTube.propTypes = {\n videoId: PropTypes.string.isRequired,\n start: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n className: PropTypes.string,\n width: PropTypes.number,\n height: PropTypes.number\n};\n","\nconst defaultLocale = 'en-US';\n\nconst resolveI18nPath = locale => path => {\n if (locale === defaultLocale) {\n return path;\n }\n return `${locale.substring(0, locale.indexOf('-'))}/${path}`;\n};\n\nmodule.exports = {\n defaultLocale,\n resolveI18nPath\n};\n"],"names":["UPPERCASE","LOWERCASE","LEADING_CAPITAL","IDENTIFIER","SEPARATORS","LEADING_SEPARATORS","RegExp","source","SEPARATORS_AND_IDENTIFIER","NUMBERS_AND_IDENTIFIER","camelCase","input","options","Array","isArray","TypeError","pascalCase","preserveConsecutiveUppercase","map","x","trim","filter","length","join","toLowerCase","locale","string","toLocaleLowerCase","toUpperCase","toLocaleUpperCase","isLastCharLower","isLastCharUpper","isLastLastCharUpper","i","character","test","slice","preserveCamelCase","replace","lastIndex","m1","charAt","_","identifier","m","postProcess","module","exports","hasNativeLazyLoadSupport","HTMLImageElement","prototype","srcSet","width","height","layout","wrapperStyle","className","style","getMainProps","isLoading","isLoaded","images","loading","shouldLoad","_extends","opacity","getPlaceholderProps","placeholder","backgroundColor","objectFit","objectPosition","position","top","left","bottom","right","result","transition","Sizer","React","createElement","paddingTop","maxWidth","display","alt","role","src","LayoutWrapper","_ref","children","props","_objectWithoutPropertiesLoose","Fragment","Image","decoding","Picture","_ref2","fallback","sources","sizes","media","type","key","fallbackImage","propTypes","PropTypes","isRequired","displayName","Placeholder","_Picture$propTypes","propName","componentName","Error","MainImage","removeNewLines","str","altValidator","rest","image","_excluded","Set","renderImageToStringPromise","renderImage","GatsbyImageHydrator","as","class","preactClass","onStartLoad","onLoad","onError","getWrapperProps","wStyle","wClass","wrapperProps","root","useRef","useMemo","JSON","stringify","sizer","useEffect","import","then","renderImageToString","swapPlaceholderImage","ssrImage","current","querySelector","complete","wasCached","setTimeout","removeAttribute","addEventListener","removeEventListener","onLoadListener","imageCache","add","cacheKey","has","animationFrame","cleanupCallback","innerHTML","requestAnimationFrame","cancelAnimationFrame","useLayoutEffect","ref","dangerouslySetInnerHTML","__html","suppressHydrationWarning","GatsbyImage","memo","_getStaticImage","StaticImage","__imageData","imageData","__error","console","warn","imgClassName","imgStyle","placeholderBackgroundColor","cleanedImages","checkDimensionProps","number","validLayouts","GatsbyImageBrowser","r","e","t","f","n","cb","mod","arguments","__create","Object","create","__defProp","defineProperty","__defProps","defineProperties","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropDescs","getOwnPropertyDescriptors","__getOwnPropNames","getOwnPropertyNames","__getOwnPropSymbols","getOwnPropertySymbols","__getProtoOf","getPrototypeOf","__hasOwnProp","hasOwnProperty","__propIsEnum","propertyIsEnumerable","__defNormalProp","obj","value","enumerable","configurable","writable","__spreadValues","a","b","prop","call","__spreadProps","__objRest","exclude","target","indexOf","require_prism","Prism2","lang","uniqueId","plainTextGrammar","util","encode","tokens","Token","content","alias","o","toString","objId","clone","deepClone","visited","id","forEach","v","getLanguage","element","exec","parentElement","setLanguage","language","classList","isActive","defaultActivation","no","contains","languages","plain","plaintext","text","txt","extend","redef","lang2","insertBefore","inside","before","insert","grammar","ret","token","newToken","old","DFS","this","callback","property","propertyType","plugins","highlight","env","code","hooks","run","tokenize","tokenList","LinkedList","addAfter","head","matchGrammar","list","array","node","next","tail","push","toArray","all","name","hooks2","callbacks","matchedStr","matchPattern","pattern","pos","lookbehind","match","lookbehindLength","index","startNode","startPos","rematch","patterns","j","cause","patternObj","greedy","global","flags","currentNode","reach","removeCount","from","to","p","k","matchStr","after","removeFrom","prev","removeRange","nestedRematch","newNode","count","s","tag","classes","attributes","aliases","apply","default","Prism","isNodeMode","except","desc","get","__copyProps","__esModule","__toESM","regex","range","escape","backreference","anchor","group","quantifier","alternation","clike","comment","punctuation","keyword","boolean","function","operator","javascript","parameter","constant","hashbang","interpolation","markup","addInlined","addAttribute","js","actionscript","xml","coffeescript","delimiter","script","coffee","l","javadoclike","e2","e3","e4","addSupport","css","atrule","rule","url","selector","important","attribute","namespace","combinator","variable","hexcode","color","unit","entity","n2","t2","yaml","scalar","directive","datetime","null","yml","prolog","doctype","cdata","title","html","mathml","svg","ssml","atom","rss","markdown","blockquote","table","hr","bold","italic","strike","a2","r2","n3","t3","parseInt","Number","c","u","autoloader","Date","valueOf","Math","floor","random","loadLanguages","document","getElementById","textContent","amp","lt","gt","quot","String","fromCodePoint","fromCharCode","md","graphql","description","fragment","object","d","g","s2","sql","h","keys","a3","l2","u2","substring","splice","concat","Boolean","typescript","ts","jsx","tsx","builtin","decorator","at","generic","jsdoc","example","flow","unshift","n4js","annotation","n4jsd","method","imports","spread","arrow","dom","tagName","pop","openedBraces","swift","literal","label","nil","omit","kotlin","expression","char","kt","kts","macro","objectivec","objc","reason","constructor","rust","go","cpp","themes_exports","__export","dracula","dracula_default","duotoneDark","duotoneDark_default","duotoneLight","duotoneLight_default","github","github_default","jettwaveDark","jettwaveDark_default","jettwaveLight","jettwaveLight_default","nightOwl","nightOwl_default","nightOwlLight","nightOwlLight_default","oceanicNext","oceanicNext_default","okaidia","okaidia_default","palenight","palenight_default","shadesOfPurple","shadesOfPurple_default","synthwave84","synthwave84_default","ultramin","ultramin_default","vsDark","vsDark_default","vsLight","vsLight_default","styles","types","fontStyle","textDecorationLine","fontWeight","colors","backgroundImage","textShadow","cursor","themeToDict_default","theme17","themeDict","reduce","acc","themeEntry","languages2","includes","accStyle","newlineRe","normalizeEmptyLines","line","empty","appendTypes","typesSize","normalizeTokens_default","typeArrStack","tokenArrStack","tokenArrIndexStack","tokenArrSizeStack","stackIndex","currentLine","splitByNewlines","split","newlineCount","i2","Highlight","_language","theme","prism","themeDictionary","setThemeDictionary","useState","previousTheme","previousLanguage","useThemeDictionary","getLineProps","useCallback","_a","_b","output","useGetLineProps","getTokenProps","styleForToken","assign","useGetTokenProps","prismRef","prismConfig","useTokenize","Highlight2","baseClass","Code","original","interpolateString","themes","undefined","lineProps","CodeBlock","ExternalLink","href","rel","Footer","resolvePath","resolveI18nPath","jkubeLogo","GettingStartedTab","titleCompact","videoId","Tab","YouTube","cClass","TM","Header","logo","Hero","S","GradleIcon","variant","elephantColor","xmlns","xmlnsXlink","viewBox","fill","KubernetesIcon","textIndent","textAlign","lineHeight","textTransform","blockProgression","marker","stroke","strokeWidth","overflow","MavenIcon","idPrefix","useId","x1","x2","y1","y2","gradientTransform","gradientUnits","offset","stopColor","xlinkHref","isolation","OpenShiftIcon","hideText","textColor","MainLayout","icons","ApacheCamel","ApacheKaraf","Kubernetes","OpenLiberty","OpenShift","Quarkus","Spring","Thorntail","Vertx","QuickStartCard","technologies","itemScope","itemType","itemProp","tech","idx","QuickStartList","allQuickstart","nodes","useStaticQuery","artifactId","Seo","charSet","TabContainer","tabs","activeTab","activateTab","tab","selected","onClick","hidden","stateClass","Tag","start","frameBorder","allow","allowFullScreen","defaultLocale","path"],"sourceRoot":""}