{"version":3,"file":"static/chunks/app/blog/[slug]/page-d6eadecb2b9b82ac.js","mappings":"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","sources":["webpack://_N_E/?9b25","webpack://_N_E/./src/app/blog/[slug]/post-share/post-share.styles.ts","webpack://_N_E/./src/components/elements/edit-on-github/index.tsx","webpack://_N_E/./src/components/elements/square-icon/index.tsx","webpack://_N_E/./src/components/elements/square-icon/square-icon.types.ts","webpack://_N_E/./src/components/elements/square-icon/square-icon.styles.ts","webpack://_N_E/./src/components/modules/heading-block/heading-block.styles.ts","webpack://_N_E/./src/components/modules/social-share/social-share.styles.ts","webpack://_N_E/./src/components/modules/social-share/web-share.tsx","webpack://_N_E/./src/components/modules/table-content/hooks/use-active-toc.ts","webpack://_N_E/./src/components/modules/table-content/components/table-content-trigger.tsx","webpack://_N_E/./src/components/modules/table-content/components/table-content-fixed.tsx","webpack://_N_E/./src/components/modules/table-content/index.tsx","webpack://_N_E/./src/components/sections/blog/related-posts/related-posts.styles.ts","webpack://_N_E/./src/components/sections/blog/single-post-hero/single-post-hero.styles.ts","webpack://_N_E/./src/components/sections/content-with-table/content-with-table.styles.ts","webpack://_N_E/./src/lib/hooks/use-mounted.ts"],"sourcesContent":["import(/* webpackMode: \"eager\", webpackExports: [\"default\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/node_modules/next-image-export-optimizer/dist/ExportedImage.js\");\n;\nimport(/* webpackMode: \"eager\" */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/node_modules/next/dist/client/link.js\");\n;\nimport(/* webpackMode: \"eager\" */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/node_modules/next/dist/shared/lib/lazy-dynamic/dynamic-bailout-to-csr.js\");\n;\nimport(/* webpackMode: \"eager\" */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/node_modules/next/dist/shared/lib/lazy-dynamic/preload-css.js\");\n;\nimport(/* webpackMode: \"eager\" */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/node_modules/next/font/google/target.css?{\\\"path\\\":\\\"src/components/modules/block-code/index.tsx\\\",\\\"import\\\":\\\"Roboto_Mono\\\",\\\"arguments\\\":[{\\\"subsets\\\":[\\\"latin\\\"],\\\"weight\\\":[\\\"400\\\"],\\\"variable\\\":\\\"--font-code\\\"}],\\\"variableName\\\":\\\"dmCodeFont\\\"}\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"SocialShareContainer\",\"SocialButton\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/app/blog/[slug]/post-share/post-share.styles.ts\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"BadgeWrapper\",\"AdditionalText\",\"StyledBadge\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/badge/badge.styles.ts\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"StyledLink\",\"StyledButton\",\"StyledButtonWrapper\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/button/button.styles.ts\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"StyledContainer\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/container/container.styles.ts\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"EditOnGithub\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/edit-on-github/index.tsx\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"StyledGradient\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/gradient/gradient.styles.ts\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"StyledHeading\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/heading/heading.styles.ts\");\n;\nimport(/* webpackMode: \"eager\" */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/icon/custom/apple-logo.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/icon/custom/bun-logo.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/icon/custom/chrome-logo.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/icon/custom/deno-logo.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/icon/custom/docker-logo.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/icon/custom/electron-logo.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/icon/custom/firefox-logo.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/icon/custom/github.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/icon/custom/java-logo.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/icon/custom/linux-logo.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/icon/custom/node-logo.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/icon/custom/product-hunt-logo.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/icon/custom/python-logo.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/icon/custom/ruby-logo.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/icon/custom/shipping-fast.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/icon/custom/square-js-logo.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/icon/custom/twitter-x.svg\");\n;\nimport(/* webpackMode: \"eager\" */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/icon/custom/ycombinator-logo.svg\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"StyledImageWrapper\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/image/image.styles.ts\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"MovingBorder\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/moving-border/index.ts\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"StyledSquareIcon\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/square-icon/square-icon.styles.ts\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"StyledStack\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/stack/stack.styles.ts\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"StyledText\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/text/text.styles.ts\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"Accordion\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/modules/accordion/index.tsx\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"StyledInlineCode\",\"StyledBlockCodeWrapper\",\"StyledBlockCodeTitleWrapper\",\"StyledBlockCodeContent\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/modules/block-code/block-code.styles.ts\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"Code\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/modules/block-code/components/code.tsx\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"StyledBlogCardWrapper\",\"StyledBlogCardFigure\",\"StyledBlogCardTag\",\"StyledBlogCardContentWrapper\",\"StyledExcerpt\",\"StyledBlogCardButtonWrapper\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/modules/blog-card/blog-card.styles.ts\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"StyledCTABoxWrapper\",\"StyledCTABoxSubtitle\",\"StyledCTABoxContentWrapper\",\"StyledCTABoxButtonWrapper\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/modules/cta-box/cta-box.styles.ts\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"StyledHeadingBlockWrapper\",\"StyledHeadingBlockTitle\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/modules/heading-block/heading-block.styles.ts\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"Newsletter\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/modules/newsletter/index.tsx\");\n;\nimport(/* webpackMode: \"eager\" */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/modules/social-share/web-share.tsx\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"TableContent\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/modules/table-content/index.tsx\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"StyledRelatedPostWrapper\",\"StyledRelatedPostsGrid\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/sections/blog/related-posts/related-posts.styles.ts\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"StyledGoBack\",\"StyledSinglePost\",\"StyledSinglePostDetails\",\"StyledTags\",\"StyledPostMeta\",\"StyledSinglePostImageWrapper\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/sections/blog/single-post-hero/single-post-hero.styles.ts\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"StyledContentWithTableWrapper\",\"StyledContentWithTableUpperGradientWrapper\",\"StyledContentWithTableLowerGradientWrapper\",\"StyledContentWithTableContentWrapper\",\"StyledContentWithTableTableWrapper\",\"StyledContentRichText\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/sections/content-with-table/content-with-table.styles.ts\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"StyledHeading\",\"StyledLink\",\"StyledText\",\"StyledHighlightedParagraphs\",\"StyledUL\",\"StyledOL\",\"StyledImage\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/sections/rich-text/components/default.styles.ts\");\n","'use client';\n\nimport { styled } from '@/styles';\n\nexport const SocialShareContainer = styled.div`\n display: flex;\n flex-direction: column;\n align-items: center;\n width: 100%;\n justify-content: center;\n gap: 8px;\n margin-top: 64px;\n`;\n\nexport const SocialButton = styled.a`\n display: inline-flex;\n cursor: pointer;\n\n @media (hover: hover) {\n &:hover {\n cursor: pointer;\n }\n }\n`;\n","'use client';\n\nimport { styled } from '@/styles';\n\nimport { PencilSimple } from '@/components/elements/icon';\nimport { Link } from '@/components/elements/link';\n\nconst EditText = styled.em`\n margin-top: 20px;\n display: flex;\n align-items: center;\n gap: 5px;\n color: ${({ theme }) => theme.colors.text.darkGrey};\n\n a {\n color: ${({ theme }) => theme.colors.text.darkGrey};\n text-decoration: underline;\n transition: color ease-in 200ms;\n\n @media (hover: hover) {\n &:hover {\n color: ${({ theme }) => theme.colors.text.lightGrey};\n }\n }\n }\n`;\n\nexport const EditOnGithub = (props: { url: string }) => \n Suggest changes to this page\n \n on GitHub\n \n","import { StyledSquareIcon } from './square-icon.styles';\nimport type { SquareIconProps } from './square-icon.types';\n\nexport const SquareIcon = ({ icon: Icon, $size = 'medium', $variant = 'primary', ...props }: SquareIconProps) => {\n return (\n \n \n \n );\n};\n","import type { Icon } from '@phosphor-icons/react';\n\nimport type { CustomIcon } from '../icon/custom/types';\n\nexport const SquareIconSizes = {\n mini: 40,\n small: 48,\n medium: 56,\n large: 64,\n xLarge: 72,\n};\n\nexport interface StyledSquareIconProps {\n $variant?: 'primary' | 'secondary' | 'darker-secondary' | 'tertiary' | 'tertiary-bigger';\n $size?: keyof typeof SquareIconSizes;\n}\n\nexport type IconType = Icon | CustomIcon;\n\nexport interface SquareIconProps extends StyledSquareIconProps {\n icon: IconType;\n}\n","'use client';\n\nimport type { StyledSquareIconProps } from './square-icon.types';\nimport { SquareIconSizes } from './square-icon.types';\n\nimport { css, styled } from '@/styles';\n\nexport const StyledSquareIcon = styled.div`\n display: flex;\n width: fit-content;\n border-radius: 12px;\n padding: 11px;\n border: 1px solid ${({ theme }) => theme.colors.button.border};\n width: ${({ $size }) => SquareIconSizes[$size || 'medium']}px;\n height: ${({ $size }) => SquareIconSizes[$size || 'medium']}px;\n\n ${({ $variant, $size }) => {\n switch ($variant) {\n case 'primary':\n return css`\n background-color: ${({ theme }) => theme.colors.inkBlack};\n\n box-shadow:\n 0px 2px 0px 0px rgba(0, 0, 0, 0.05) inset,\n 0px 0px 11px 0px rgba(0, 0, 0, 0.05);\n\n & svg {\n color: ${({ theme }) => theme.colors.electricBlue};\n box-shadow:\n 0px 2.4 1.2 0px rgba(201, 212, 251, 0.1) inset,\n 0px -1.2 1.2 0px rgba(16, 46, 151, 0.1) inset,\n 0px 2.4 1.2 0px rgba(201, 212, 251, 0.1) inset,\n 0px -1.2 1.2 0px rgba(16, 46, 151, 0.1) inset;\n }\n\n ${() =>\n $size === 'large' &&\n `\n border-width: 1.13px;\n border-radius: 16px;\n align-items: center;\n justify-content: center;\n `}\n `;\n\n case 'secondary':\n return css`\n background-color: ${({ theme }) => theme.colors.inkGrey};\n\n & svg {\n color: ${({ theme }) => theme.colors.lightGrey};\n }\n `;\n\n case 'darker-secondary':\n return css`\n background-color: ${({ theme }) => theme.colors.inkBlack};\n\n & svg {\n color: ${({ theme }) => theme.colors.lightGrey};\n }\n `;\n\n case 'tertiary':\n return css`\n color: ${({ theme }) => theme.colors.white}\n border-radius: 8px;\n padding: 12px;\n background-color: ${({ theme }) => theme.colors.darkGrey};\n box-shadow: 0px 0px 24px 0px #8082891a inset;\n `;\n\n case 'tertiary-bigger':\n return css`\n color: ${({ theme }) => theme.colors.white}\n border-radius: 8px;\n padding: 15px;\n background-color: ${({ theme }) => theme.colors.darkGrey};\n box-shadow: 0px 0px 24px 0px #8082891a inset;\n `;\n }\n }}\n`;\n","'use client';\n\nimport type { StyledHeadingBlockProps } from './heading-block.types';\n\nimport { Heading } from '@/components/elements/heading';\nimport { styled } from '@/styles';\n\nconst alignDictionary: Record = {\n right: 'end',\n left: 'start',\n center: 'center',\n end: 'end',\n start: 'start',\n};\n\nexport const StyledHeadingBlockWrapper = styled.section`\n max-width: 656px;\n display: flex;\n flex-direction: column;\n gap: 24px;\n text-align: ${({ $align }) => $align};\n align-items: ${({ $align }) => alignDictionary[$align]};\n margin: ${({ $isContentCentered: $centered }) => $centered && '0 auto'};\n`;\n\nexport const StyledHeadingBlockTitle = styled(Heading)`\n &&& {\n span {\n -webkit-text-fill-color: var(--cinnabar-red-light);\n }\n }\n`;\n","'use client';\n\nimport { styled } from '@/styles';\n\nexport const SocialShareContainer = styled.div`\n display: flex;\n flex-direction: row;\n gap: 8px;\n`;\n\nexport const SocialButton = styled.a`\n display: inline-flex;\n cursor: pointer;\n`;\n","'use client';\n\nimport { SocialButton } from './social-share.styles';\nimport type { WebShareProps } from './social-share.types';\n\nimport { ShareNetwork } from '@/components/elements/icon';\nimport { SquareIcon } from '@/components/elements/square-icon';\nimport { useMounted } from '@/lib/hooks/use-mounted';\nimport { isSSR } from '@/lib/utils';\n\nconst WebShare = ({ title, url }: WebShareProps) => {\n const isMounted = useMounted();\n\n if (!isMounted) {\n return null;\n }\n\n if (isSSR || !navigator || !navigator.share) {\n return null;\n }\n\n return (\n {\n navigator.share({\n text: title,\n url: url,\n });\n }}\n >\n \n \n );\n};\n\nexport default WebShare;\n","import { useEffect } from 'react';\n\nimport { screens } from '@/styles';\n\nconst getHeadings = () =>\n document.querySelectorAll('article :is(h2,h3,h4), div#intro');\n\nfunction useActiveToc() {\n useEffect(() => {\n const isBigScreen = matchMedia(`(min-width: ${screens.xl})`);\n\n const updateActiveHeading = (\n container: HTMLElement,\n headingElem: HTMLElement\n ) => {\n // Remove active class from all toc items\n container.querySelectorAll('a')\n .forEach(e => e.classList.remove('active'));\n\n // Add active to the correct toc\n headingElem.classList.add('active');\n\n if (isBigScreen.matches) {\n const elementTop = headingElem.offsetTop;\n const containerHeight = container.clientHeight;\n const scrollOffset = elementTop - (containerHeight / 2);\n\n container.scroll({\n top: scrollOffset,\n behavior: 'smooth'\n });\n }\n }\n\n const updateFromIntersection: IntersectionObserverCallback = entries => {\n const scrollContainer = document\n .querySelector('#table-of-content-headings')\n ?.parentElement;\n if (!scrollContainer) return;\n\n for (const entry of entries) {\n const { id } = entry.target as HTMLElement;\n const tocHeadingEl = scrollContainer.querySelector(`a[href=\"#${id}\"]`);\n\n if (tocHeadingEl && entry.isIntersecting) {\n updateActiveHeading(scrollContainer, tocHeadingEl);\n }\n }\n };\n\n const observerOptions: IntersectionObserverInit = {\n rootMargin: '0px 0px -50%',\n threshold: 1,\n };\n\n const headingObserver = new IntersectionObserver(updateFromIntersection, observerOptions);\n\n getHeadings().forEach(heading => headingObserver.observe(heading));\n\n return () => {\n getHeadings().forEach(heading => headingObserver.unobserve(heading));\n };\n }, []);\n}\n\nexport default useActiveToc;\n","'use client';\n\nimport type { TableContentProps } from '../table-content.types';\n\nimport { Link } from '@/components/elements/link';\nimport { Text } from '@/components/elements/text';\n\nconst TextComponent = ({ children, ...props }: Component) => (\n \n {children}\n \n);\n\nexport const TableContentTriggerComponent = ({ text, href, ...props }: TableContentProps['links'][number]) => {\n if (href) {\n return (\n \n {text}\n \n );\n }\n\n return {text};\n};\n","'use client';\n\nimport kebabCase from 'lodash/kebabCase';\n\nimport { TableContentTriggerComponent } from './table-content-trigger';\nimport useActiveToc from '../hooks/use-active-toc';\nimport { StyledTableContentItemLink, StyledTableContentSubitem } from '../table-content.styles';\nimport type { TableContentFixedProps, TableContentSubitem } from '../table-content.types';\n\nimport { Text } from '@/components/elements/text';\n\nexport const TableContentAccordionFixed = ({ link, hasSubItems }: TableContentFixedProps) => {\n useActiveToc();\n\n const renderSubItems = (subItems: TableContentSubitem[]) => {\n return subItems.map(item => {\n const withSubItems = item.subItems && item.subItems?.length > 0;\n const isHeading2 = (item.level ?? 2) === 2;\n const isChildHeading = !withSubItems && !isHeading2;\n\n return (\n
    \n
  • \n \n \n {item.text}\n \n \n
  • \n {item.subItems && renderSubItems(item.subItems)}\n
\n );\n });\n };\n\n return (\n <>\n {link.text && (\n \n \n \n )}\n\n {hasSubItems && link.subItems?.length && renderSubItems(link.subItems)}\n \n );\n};\n","'use client';\n\nimport * as Accordion from '@radix-ui/react-accordion';\nimport { usePathname } from 'next/navigation';\n\nimport { TableContentAccordionFixed } from './components/table-content-fixed';\nimport { TableContentTriggerComponent } from './components/table-content-trigger';\nimport {\n StyledTableContentContent,\n StyledTableContentItemTrigger,\n StyledTableContentSubitem,\n StyledTableContentWrapper,\n TableOfContentFixedWrapper,\n} from './table-content.styles';\nimport type { TableContentProps } from './table-content.types';\n\nimport { CaretDown } from '@/components/elements/icon';\nimport { Text } from '@/components/elements/text';\nimport { getPathWithoutHash } from '@/lib/utils';\n\nconst AccordionItem = ({\n link,\n isCollapsible,\n currentPath,\n}: {\n link: TableContentProps['links'][number];\n isCollapsible: boolean;\n currentPath?: string;\n}) => {\n const hasSubItems = Boolean(Array.isArray(link.subItems) && link.subItems?.length);\n const showCaret = isCollapsible && hasSubItems;\n\n if (!isCollapsible)\n return (\n \n \n \n );\n\n return (\n \n \n {' '}\n {showCaret && }\n \n {hasSubItems && (\n \n {link?.subItems?.map(item => (\n \n \n {item.text}\n \n \n ))}\n \n )}\n \n );\n};\n\nexport const TableContent = ({ isCollapsible, links }: TableContentProps) => {\n const currentPath = usePathname();\n\n const content =\n Array.isArray(links) &&\n links.map((link, idx) => (\n \n ));\n\n if (!isCollapsible) {\n return {content};\n }\n\n const defaultOpenItem = links.find(item =>\n item.subItems?.some(subItem =>\n getPathWithoutHash(subItem.href) === currentPath\n )\n );\n\n return (\n \n \n <>{ content }\n \n \n );\n};\n","'use client';\n\nimport { screens, styled } from '@/styles';\n\nexport const StyledRelatedPostWrapper = styled.section`\n padding: 32px 0;\n\n @media (min-width: ${screens['lg']}) {\n padding: 24px 0 0 0;\n margin: 0;\n }\n`;\n\nexport const StyledRelatedPostsGrid = styled.div`\n display: grid;\n grid-template-columns: 1fr; /* 1 column on mobile */\n gap: 24px;\n\n @media (min-width: ${screens['lg']}) {\n grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));\n }\n\n & article {\n max-width: 100%;\n\n @media (min-width: ${screens['lg']}) {\n max-width: 434px;\n }\n }\n`;\n","'use client';\n\nimport { css, screens, styled } from '@/styles';\n\nexport const StyledSinglePost = styled.div`\n display: flex;\n flex-direction: column-reverse;\n align-items: center;\n justify-content: space-between;\n gap: 32px;\n border-radius: 12px;\n padding: 16px;\n margin-top: 32px;\n background-color: ${({ theme }) => theme.colors.inkBlack};\n box-shadow:\n 0 0 0 1px ${({ theme }) => theme.colors.button.border},\n 0 0 8px 0 ${({ theme }) => theme.colors.shadowDefault};\n margin-bottom: 24px;\n\n @media (min-width: ${screens['lg']}) {\n padding: 32px;\n align-items: normal;\n margin-top: 64px;\n flex-direction: row;\n gap: 64px;\n }\n`;\n\nexport const StyledGoBack = styled.div<{ $displayOn: 'mobile' | 'desktop' }>`\n display: none;\n\n & a {\n display: flex;\n align-items: center;\n gap: 8px;\n }\n\n ${({ $displayOn }) =>\n $displayOn === 'desktop' &&\n css`\n @media (min-width: ${screens['lg']}) {\n display: block;\n }\n `}\n\n ${({ $displayOn }) =>\n $displayOn === 'mobile' &&\n css`\n @media (max-width: ${screens['lg']}) {\n display: block;\n margin-top: 16px;\n margin-bottom: 32px;\n }\n `}\n`;\n\nexport const StyledPostMeta = styled.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n`;\n\nexport const StyledSinglePostImageWrapper = styled.div`\n width: 100%;\n\n & img {\n border-radius: 8px;\n overflow: hidden;\n max-height: 174px;\n min-height: 174px;\n\n @media (min-width: ${screens['lg']}) {\n max-height: fit-content;\n min-height: 100%;\n }\n }\n\n @media (min-width: ${screens['lg']}) {\n max-width: 607px;\n min-width: 200px;\n }\n`;\n\nexport const StyledSinglePostDetails = styled.div`\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n gap: 24px;\n\n @media (max-width: ${screens['lg']}) {\n word-break: break-word;\n }\n`;\n\nexport const StyledTags = styled.div`\n display: flex;\n flex-wrap: wrap;\n gap: 16px;\n\n @media (min-width: ${screens['lg']}) {\n display: none;\n visibility: hidden;\n }\n`;\n","'use client';\n\nimport type { StyledContentWithTableProps } from './content-with-table.type';\n\nimport { css, styled } from '@/styles';\n\nexport const StyledContentWithTableWrapper = styled.section`\n position: relative;\n overflow: clip;\n background-color: ${({ theme, $bgVariant }) => $bgVariant && theme.colors[$bgVariant]};\n`;\n\nconst StyledContentWithTableGradientWrapper = css`\n position: absolute;\n height: 900px;\n\n @media (max-width: ${({ theme }) => theme.screens.lg}) {\n display: none;\n }\n`;\n\nexport const StyledContentWithTableUpperGradientWrapper = styled.div`\n ${StyledContentWithTableGradientWrapper}\n right: -250px;\n top: -100px;\n transform: rotate(180deg);\n`;\n\nexport const StyledContentWithTableLowerGradientWrapper = styled.div`\n ${StyledContentWithTableGradientWrapper}\n left: -250px;\n top: 75vh;\n\n & > div {\n z-index: initial;\n }\n`;\n\nexport const StyledContentWithTableContentWrapper = styled.div`\n position: relative;\n display: flex;\n flex-direction: column;\n gap: 32px;\n justify-content: center;\n padding: 32px 0;\n max-width: ${({ theme }) => theme.screens.content};\n margin: 0 auto;\n\n @media (min-width: ${({ theme }) => theme.screens.lg}) {\n display: grid;\n padding: 64px 0 32px 0;\n max-width: initial;\n gap: 45px;\n grid-template-columns: ${({ theme }) => theme.screens.content};\n }\n\n @media (min-width: ${({ theme }) => theme.screens.xl}) {\n grid-template-columns: 1fr ${({ theme }) => theme.screens.content} 1fr;\n }\n`;\n\nexport const StyledContentWithTableTableWrapper = styled.aside`\n display: none;\n\n @media (min-width: ${({ theme }) => theme.screens.xl}) {\n display: flex;\n justify-content: center;\n align-self: flex-start;\n\n position: sticky;\n top: 16px;\n\n & > div {\n max-width: 296px;\n min-width: 296px;\n width: 100%;\n height: fit-content;\n }\n }\n`;\n\nexport const StyledContentRichText = styled.article`\n && h2:first-of-type {\n margin-top: 0;\n }\n\n & iframe.video-embed {\n width: 100%;\n min-height: 400px;\n margin: 10px 0;\n }\n`;\n","import { useEffect, useState } from 'react';\n\nexport const useMounted = () => {\n const [mounted, setMounted] = useState(false);\n\n useEffect(() => {\n setMounted(true);\n }, []);\n\n return { isMounted: mounted };\n};\n"],"names":["Promise","resolve","then","__webpack_require__","bind","t","SocialShareContainer","styled","div","_templateObject","SocialButton","a","_templateObject1","EditText","em","theme","param","colors","text","darkGrey","lightGrey","EditOnGithub","react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__","jsxs","jsx","PencilSimple","Link","href","props","url","target","SquareIcon","icon","Icon","$size","$variant","react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__","StyledSquareIcon","size","weight","SquareIconSizes","mini","small","medium","large","xLarge","_templateObject5","button","border","css","inkBlack","electricBlue","inkGrey","white","alignDictionary","right","left","center","end","start","StyledHeadingBlockWrapper","section","$align","$isContentCentered","$centered","StyledHeadingBlockTitle","Heading","__webpack_exports__","title","useMounted","isSSR","navigator","share","aria-label","onClick","ShareNetwork","getHeadings","document","querySelectorAll","Z","useEffect","isBigScreen","matchMedia","concat","screens","xl","updateActiveHeading","container","headingElem","forEach","e","classList","remove","add","matches","elementTop","offsetTop","containerHeight","clientHeight","scroll","top","behavior","headingObserver","IntersectionObserver","entries","scrollContainer","querySelector","parentElement","entry","id","tocHeadingEl","isIntersecting","rootMargin","threshold","heading","observe","unobserve","TextComponent","children","jsx_runtime","Text","fontSize","fontWeight","color","TableContentTriggerComponent","TableContentAccordionFixed","link","hasSubItems","useActiveToc","renderSubItems","subItems","map","item","withSubItems","length","isHeading2","level","isChildHeading","ul","style","paddingLeft","data-level","li","StyledTableContentSubitem","$isAccordionFixed","data-to-scrollspy-id","kebabCase","as","Fragment","StyledTableContentItemLink","AccordionItem","isCollapsible","currentPath","Boolean","Array","isArray","showCaret","Accordion","value","StyledTableContentItemTrigger","undefined","CaretDown","StyledTableContentContent","data-active","TableOfContentFixedWrapper","TableContent","links","usePathname","content","idx","StyledTableContentWrapper","data-match-scroll","defaultOpenItem","find","some","subItem","getPathWithoutHash","asChild","type","defaultValue","collapsible","StyledRelatedPostWrapper","StyledRelatedPostsGrid","StyledSinglePost","shadowDefault","StyledGoBack","_templateObject3","$displayOn","StyledPostMeta","_templateObject4","StyledSinglePostImageWrapper","StyledSinglePostDetails","_templateObject6","StyledTags","_templateObject7","StyledContentWithTableWrapper","$bgVariant","StyledContentWithTableGradientWrapper","lg","StyledContentWithTableUpperGradientWrapper","_templateObject2","StyledContentWithTableLowerGradientWrapper","StyledContentWithTableContentWrapper","StyledContentWithTableTableWrapper","aside","StyledContentRichText","article","mounted","setMounted","useState","isMounted"],"sourceRoot":""}