{"version":3,"file":"static/chunks/app/will-it-cors/[step]/page-b75f229092fbd057.js","mappings":"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","sources":["webpack://_N_E/?d04c","webpack://_N_E/./src/app/will-it-cors/components/breadcrumbs/breadcrumbs.styles.ts","webpack://_N_E/./src/app/will-it-cors/components/steps/components/editable-headers.tsx","webpack://_N_E/./src/app/will-it-cors/utils/index.ts","webpack://_N_E/./src/components/modules/block-code/index.tsx","webpack://_N_E/./src/components/modules/checkbox/checkbox.styles.ts","webpack://_N_E/./src/components/modules/checkbox/index.tsx","webpack://_N_E/./src/app/will-it-cors/components/steps/components/index.tsx","webpack://_N_E/./src/app/will-it-cors/store/index.ts","webpack://_N_E/./src/app/will-it-cors/components/steps/index.tsx","webpack://_N_E/./src/app/will-it-cors/will-it-cors.styles.ts","webpack://_N_E/./src/components/elements/heading/heading.styles.ts","webpack://_N_E/./src/components/elements/heading/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/layout/styles.layout.ts","webpack://_N_E/./src/components/modules/block-code/block-code.styles.ts","webpack://_N_E/./src/components/modules/block-code/components/code.tsx"],"sourcesContent":["import(/* 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/src/app/will-it-cors/components/breadcrumbs/breadcrumbs.styles.ts\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"Steps\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/app/will-it-cors/components/steps/index.tsx\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"StyledWillItCorsWrapper\",\"StyledWillItCorsContainer\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/app/will-it-cors/will-it-cors.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\" */ \"/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: [\"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: [\"ThemeToggle\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/elements/theme-toggle/index.tsx\");\n;\nimport(/* webpackMode: \"eager\" */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/layout/footer/footer.styles.ts\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"StyledMobileWrapper\",\"StyledNavMobileItems\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/layout/header/header-mobile/header-mobile.styles.ts\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"MobileDrawerMenu\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/layout/header/header-mobile/mobile-drawer-menu.tsx\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"StyledHeader\",\"StyledHeaderContainer\",\"StyledNavigation\",\"StyledNavItems\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/layout/header/header.styles.ts\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"StyledLandingLayoutWrapper\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/layout/styles.layout.ts\");\n;\nimport(/* webpackMode: \"eager\", webpackExports: [\"DownloadDropdown\"] */ \"/home/runner/work/httptoolkit-website/httptoolkit-website/src/components/modules/download-button/download-dropdown.tsx\");\n","'use client';\n\nimport type { BreadcrumState } from './breadcrumbs-types';\n\nimport { css, styled } from '@/styles';\n\nexport const StyledBreadcrumbContainer = styled.nav`\n display: flex;\n flex-direction: row;\n align-items: flex-start;\n justify-content: space-between;\n`;\n\nexport const StyledBreadcrumbItemWrapper = styled.div<{ $state?: BreadcrumState }>`\n flex: 1 1 33%;\n\n display: flex;\n flex-direction: row;\n align-items: top;\n justify-content: space-evenly;\n\n padding: 5px;\n text-align: center;\n\n p {\n padding: 0 5px;\n\n ${({ $state }) => {\n switch ($state) {\n case 'yes':\n return css`\n opacity: 0.6;\n `;\n\n case 'no':\n case 'maybe':\n return css`\n font-weight: bold;\n `;\n\n case 'nvm':\n return css`\n opacity: 0.5;\n text-decoration: line-through;\n `;\n }\n }}\n }\n`;\n","// @ts-nocheck\n\n'use client';\n\nimport { flatMap } from 'lodash-es';\nimport { action } from 'mobx';\nimport { Observer } from 'mobx-react-lite';\nimport * as React from 'react';\n\nimport { Trash } from '@/components/elements/icon';\nimport { SquareIcon } from '@/components/elements/square-icon';\nimport { Input } from '@/components/modules/input';\nimport { screens, styled } from '@/styles';\n\n// Based RFC7230, 3.2.6:\nconst HEADER_NAME_PATTERN = \"[!#$%&'*+-;^_`|~A-Za-z0-9]+\";\n\nfunction clickOnEnter(e) {\n if (e.target === e.currentTarget && e.key === 'Enter') {\n // Can't use .click(), as sometimes our target is an SVGElement, and they don't have it\n e.currentTarget.dispatchEvent(new MouseEvent('click', { bubbles: true }));\n }\n}\n\n// Taken directly from https://github.com/httptoolkit/httptoolkit-ui/blob/003eb6c/src/components/common/editable-headers.tsx\n\nconst HeadersContainer = styled.div`\n display: grid;\n grid-gap: 5px;\n grid-template-columns: 54% 36% calc(10% - 28px);\n margin: 0 -18px 10px -18px;\n\n > :last-child {\n grid-column: 2 / span 2;\n }\n\n @media (min-width: ${screens.lg}) {\n margin: 0 0 10px 0;\n }\n`;\n\nconst HeaderDeleteButton = styled.button.attrs({\n type: 'button',\n 'aria-label': 'Delete header',\n})`\n padding: 0;\n background: transparent;\n border: none;\n cursor: pointer;\n`;\n\n// Check for headers that browsers won't let you send\nfunction isForbiddenBrowserHeader(rawHeaderName) {\n const headerName = rawHeaderName.toLowerCase();\n\n return (\n headerName.startsWith('proxy-') ||\n headerName.startsWith('sec-') ||\n [\n 'accept-charset',\n 'accept-encoding',\n 'access-control-request-headers',\n 'access-control-request-method',\n 'connection',\n 'content-length',\n 'cookie',\n 'cookie2',\n 'date',\n 'dnt',\n 'expect',\n 'feature-policy',\n 'host',\n 'keep-alive',\n 'origin',\n 'referer',\n 'te',\n 'trailer',\n 'transfer-encoding',\n 'upgrade',\n 'via',\n ].includes(headerName)\n );\n}\n\nfunction validateClientHeaderNameChange(event) {\n const headerName = event.target.value;\n if (isForbiddenBrowserHeader(headerName)) {\n event.target.setCustomValidity(`Browsers will not let you set a custom ${headerName} header`);\n } else {\n event.target.setCustomValidity('');\n }\n}\n\nexport const EditableHeaders = props => {\n const { headers, onChange, autoFocus, onlyClientHeaders } = props;\n\n const [focused, setFocused] = React.useState(!autoFocus);\n\n return (\n \n {() => (\n \n {flatMap(headers, ([key, value], i) => [\n {\n if (onlyClientHeaders) validateClientHeaderNameChange(event);\n event.target.reportValidity();\n headers[i][0] = event.target.value;\n onChange(headers);\n })}\n />,\n {\n event.target.reportValidity();\n headers[i][1] = event.target.value;\n onChange(headers);\n })}\n />,\n {\n headers.splice(i, 1);\n onChange(headers);\n })}\n onKeyPress={clickOnEnter}\n >\n \n ,\n ]).concat([\n {\n if (onlyClientHeaders) validateClientHeaderNameChange(event);\n headers.push([event.target.value, '']);\n onChange(headers);\n })}\n ref={elem => {\n if (!elem || focused || !autoFocus) return;\n elem.focus();\n setFocused(true);\n }}\n />,\n {\n headers.push(['', event.target.value]);\n onChange(headers);\n })}\n />,\n ])}\n \n )}\n \n );\n};\n","// @ts-nocheck\nimport { find, remove } from 'lodash-es';\n\nexport function getOrigin(url: string | URL) {\n return new URL(url).origin;\n}\n\nexport function getHeaderPair(headers: any, key: string) {\n return find(headers, ([headerKey]) => headerKey.toLowerCase() === key.toLowerCase());\n}\n\nexport function getHeaderValue(headers: any, key: any) {\n return (getHeaderPair(headers, key) || [])[1];\n}\n\nexport function getHeaderValues(headers: any, key: any, separator = ',') {\n return (getHeaderValue(headers, key) || '')\n .split(separator)\n .map((v: string) => v.trim())\n .filter((v: any) => !!v);\n}\n\nexport function setHeader(headers: any, key: any, value: any) {\n const headerPair = getHeaderPair(headers, key);\n if (headerPair) {\n headerPair[1] = value;\n } else {\n headers.push([key, value]);\n }\n}\n\nexport function deleteHeader(headers: any, key: string) {\n remove(headers, ([headerKey]) => headerKey.toLowerCase() === key.toLowerCase());\n}\n\nexport function someHeaderValues(headers, predicate) {\n return headers.some(\n ([, value]) =>\n value\n .split(',')\n .map(v => v.trim())\n .filter(predicate).length > 0,\n );\n}\n\nexport function joinAnd(vals: any[], initialSep = ', ', finalSep = ' and ') {\n if (vals.length === 1) return vals[0];\n return vals.slice(0, -1).join(initialSep) + finalSep + vals[vals.length - 1];\n}\n","import { Roboto_Mono } from 'next/font/google';\n\nimport {\n StyledBlockCodeContent,\n StyledBlockCodeTitleWrapper,\n StyledBlockCodeWrapper,\n StyledInlineCode,\n} from './block-code.styles';\nimport type { BlockCodeProps } from './block-code.types';\nimport { Code } from './components/code';\n\nimport { Text } from '@/components/elements/text';\n\nconst dmCodeFont = Roboto_Mono({ subsets: ['latin'], weight: ['400'], variable: '--font-code' });\n\nexport const InlineCode = ({ children }: Component) => {\n return (\n \n {children}\n \n );\n};\n\nexport const BlockCode = ({ title, content, language = 'javascript' }: BlockCodeProps) => {\n return (\n \n \n \n {title}\n \n \n \n \n {content}\n \n \n \n );\n};\n","'use client';\n\nimport type { InputProps } from './checkbox.types';\n\nimport { styled } from '@/styles';\n\nexport const StyledInputWrapper = styled.div`\n display: flex;\n align-items: center;\n flex-direction: row;\n gap: 12px;\n width: 100%;\n`;\n\nexport const StyledInput = styled.input`\n padding: 14px 14px;\n border: none;\n font-size: ${({ theme }) => theme.fontSizes.text.s};\n line-height: 150%;\n color: ${({ theme, $hasError }) => ($hasError ? theme.colors.text.cinnarbarRed : theme.colors.text.lightGrey)};\n outline: 0;\n height: 20px;\n width: 20px;\n resize: none;\n border-radius: 6px;\n background-color: ${({ theme }) => theme.colors.inkGrey};\n accent-color: ${({ theme }) => theme.colors.electricLightBlue};\n &:focus {\n background-color: ${({ theme }) => theme.colors.inkBlack};\n }\n`;\n\nexport const STyledLabel = styled.label`\n font-size: ${({ theme }) => theme.fontSizes.text.m};\n font-weight: ${({ theme }) => theme.fontWeight.bold};\n color: ${({ theme }) => theme.colors.text.darkGrey};\n text-align: left;\n`;\n","import { forwardRef } from 'react';\n\nimport { STyledLabel, StyledInput, StyledInputWrapper } from './checkbox.styles';\nimport type { InputProps } from './checkbox.types';\n\nexport const Checkbox = forwardRef(({ id, label, ...props }, ref) => {\n return (\n \n \n {label}\n \n );\n});\n\nCheckbox.displayName = 'Checkbox';\n","import { partition, isEmpty } from 'lodash-es';\nimport { observer } from 'mobx-react-lite';\nimport { useState, type FormEventHandler } from 'react';\n\nimport { EditableHeaders } from './editable-headers';\n\nimport {\n deleteHeader,\n getHeaderValue,\n getHeaderValues,\n joinAnd,\n setHeader,\n someHeaderValues,\n} from '@/app/will-it-cors/utils';\nimport { Button } from '@/components/elements/button';\nimport { Heading } from '@/components/elements/heading';\nimport { CheckCircle, PaperPlaneTilt, XCircle } from '@/components/elements/icon';\nimport { ShippingFast } from '@/components/elements/icon/custom';\nimport { Link } from '@/components/elements/link';\nimport Stack from '@/components/elements/stack';\nimport { Text } from '@/components/elements/text';\nimport { BlockCode, InlineCode } from '@/components/modules/block-code';\nimport { Checkbox } from '@/components/modules/checkbox';\nimport { Input } from '@/components/modules/input';\n\ninterface QuestionProps {\n onNext: () => void;\n onChange: (e: string) => void;\n value: string | any;\n}\n\nexport const Question = ({ children, onNext }: Component>) => {\n const handleFormSubmit: FormEventHandler = e => {\n e.preventDefault();\n\n // @ts-expect-errorts-ignore\n if (e.target.checkValidity()) {\n onNext();\n }\n };\n\n return
{children}
;\n};\n\nexport const SourceUrlQuestion = observer(({ onNext, value, onChange }: QuestionProps) => {\n return (\n \n \n What is the URL of the page that wants to send requests?\n {\n e.preventDefault();\n onChange(e.target.value);\n }}\n />\n \n \n \n );\n});\n\nexport const TargetUrlQuestion = observer(({ onNext, value, onChange }: QuestionProps) => {\n return (\n \n \n What is the URL you want to send a request to?\n onChange(e.target.value)}\n />\n \n \n \n );\n});\n\nexport const NotCorsResult = observer(({ origin }: { origin: string }) => (\n \n \n \n \n \n You can send your request without worrying about CORS.\n \n \n The origin of your source and target URLs is the same ({origin}), so CORS restrictions don't apply.\n \n \n There may be other (less restrictive) limits on the requests you can send though. Check the list of{' '}\n forbidden headers for\n more info, and try out HTTP Toolkit if you want to see exactly what's being sent &\n received in reality.\n \n \n));\n\nexport const MixedContentResult = observer(\n ({ sourceOrigin, targetOrigin }: { sourceOrigin: string; targetOrigin: string }) => (\n \n \n \n \n \n This request will fail, because secure origins like {sourceOrigin} cannot make requests\n to insecure HTTP origins like {targetOrigin}.\n \n \n This is due to{' '}\n \n mixed content restrictions\n {' '}\n that ensure HTTPS pages can only use secure content, and isn't related to CORS.\n \n \n To fix this, you should connect to {targetOrigin} over HTTPS instead of using plain\n HTTP.\n \n \n ),\n);\n\ninterface MethodQuestionProps extends QuestionProps {\n sourceOrigin: string;\n targetOrigin: string;\n}\n\nexport const MethodQuestion = observer(\n ({ onNext, value, onChange, targetOrigin, sourceOrigin }: MethodQuestionProps) => {\n return (\n \n \n \n Your source and target URLs have different origins ({sourceOrigin} and {targetOrigin} respectively) so{' '}\n this is indeed a cross-origin request.\n \n \n What HTTP method will your\n request use?\n \n {\n const method = e.target.value.toUpperCase().trim();\n onChange(method);\n\n if (['CONNECT', 'TRACE', 'TRACK'].includes(method)) {\n e.target.setCustomValidity(`Browsers will not let you manually send a ${method} request`);\n } else {\n e.target.setCustomValidity('');\n }\n e.target.reportValidity();\n }}\n />\n \n \n \n );\n },\n);\n\ninterface RequestExtrasQuestionProps extends Pick {\n sendCredentials: boolean;\n onSendCredentials: (e: any) => void;\n onUseStreaming: (e: any) => void;\n headers: never[];\n useStreaming: boolean;\n onChangeHeaders: (e: any) => void;\n}\nexport const RequestExtrasQuestion = observer(\n ({\n onNext,\n sendCredentials,\n onSendCredentials,\n headers,\n useStreaming,\n onUseStreaming,\n onChangeHeaders,\n }: RequestExtrasQuestionProps) => {\n const [showHeaders, setShowHeaders] = useState(!isEmpty(headers));\n return (\n \n \n Do you want send or read any other data?\n\n onSendCredentials(e.target.checked)}\n />\n\n onUseStreaming(e.target.checked)}\n />\n\n {\n const shouldShowHeaders = e.target.checked;\n setShowHeaders(shouldShowHeaders);\n if (!shouldShowHeaders) {\n onChangeHeaders([]);\n }\n }}\n label=\"Send custom request headers?\"\n />\n\n {showHeaders && (\n \n )}\n\n \n \n \n );\n },\n);\n\nexport const ContentTypeQuestion = ({ onNext, value, onChange }: QuestionProps) => {\n return (\n \n \n \n What content type{' '}\n will your POST request use?\n \n onChange(e.target.value)}\n />\n \n \n Only POSTs sent with application/x-www-form-urlencoded, text/plain or multipart/form-data content-type headers\n are considered{' '}\n simple requests.\n \n \n \n );\n};\n\nexport const SimpleCorsRequest = ({ onNext }: Pick) => (\n \n Simple cross-origin request\n \n \n \n \n This is a{' '}\n \n simple cross-origin request\n \n . For requests like this, the browser doesn't need to send a preflight OPTIONS request to the server first,\n so your request will be sent to the server immediately.\n \n \n Simple requests are a GET or HEAD requests, or POST requests with specific safe content types, that don't use\n any unsafe cross-origin headers or streaming.\n \n \n However, this doesn't mean you're always allowed to read the response. That depends on\n the headers the server returns...\n \n \n \n);\n\ninterface ServerResponseQuestionProps extends QuestionProps {\n sourceOrigin?: string;\n isServerResponseReadable?: boolean;\n sendCredentials: boolean;\n targetUrl?: string;\n method?: string;\n unsafeHeaders: any;\n}\n\nexport const ServerResponseQuestion = observer(\n ({\n onNext,\n value,\n sourceOrigin,\n onChange,\n isServerResponseReadable,\n sendCredentials,\n }: ServerResponseQuestionProps) => (\n \n \n \n The browser will include an Origin header set to {sourceOrigin} with your request, so the server knows that\n this is a CORS request, and knows the specific page origin.\n \n What headers will the server return in its response?\n {\n if (e.target.checked) {\n setHeader(value, 'Access-Control-Allow-Origin', sourceOrigin);\n if (sendCredentials) {\n setHeader(value, 'Access-Control-Allow-Credentials', 'true');\n }\n setHeader(value, 'Vary', 'origin');\n } else {\n deleteHeader(value, 'Access-Control-Allow-Origin');\n deleteHeader(value, 'Access-Control-Allow-Credentials');\n\n // If there's now no headers that depend on the origin, drop the Vary\n if (\n getHeaderValue(value, 'vary') === 'origin' &&\n !someHeaderValues(value, (value: string | undefined) => value === sourceOrigin)\n ) {\n deleteHeader(value, 'Vary');\n }\n }\n onChange(value);\n }}\n />\n {\n if (e.target.checked) {\n setHeader(value, 'Access-Control-Expose-Headers', 'MyCustomHeader');\n setHeader(value, 'MyCustomHeader', '');\n } else {\n deleteHeader(value, 'Access-Control-Expose-Headers');\n deleteHeader(value, 'MyCustomHeader');\n }\n onChange(value);\n }}\n />\n {\n if (e.target.checked) {\n setHeader(value, 'Timing-Allow-Origin', sourceOrigin);\n setHeader(value, 'Vary', 'origin');\n } else {\n deleteHeader(value, 'Timing-Allow-Origin');\n\n // If there's now no headers that depend on the origin, drop the Vary\n if (\n getHeaderValue(value, 'vary') === 'origin' &&\n !someHeaderValues(value, (value: string | undefined) => value === sourceOrigin)\n ) {\n deleteHeader(value, 'Vary');\n }\n }\n onChange(value);\n }}\n />\n \n \n \n \n ),\n);\n\ninterface ServerRejectsCorsRequestProps {\n serverResponseHeaders: any;\n sendCredentials: boolean;\n sourceOrigin: string;\n}\n\nexport const ServerRejectsCorsRequest = ({\n serverResponseHeaders,\n sendCredentials,\n sourceOrigin,\n}: ServerRejectsCorsRequestProps) => {\n const allowedOrigin = getHeaderValue(serverResponseHeaders, 'access-control-allow-origin');\n const allowCredentials = getHeaderValue(serverResponseHeaders, 'access-control-allow-credentials');\n\n const missingHeaders = [\n allowedOrigin === undefined && 'Access-Control-Allow-Origin',\n sendCredentials && allowCredentials === undefined && 'Access-Control-Allow-Credentials',\n ].filter(h => !!h);\n\n const failureReasons = [\n missingHeaders.length > 0 &&\n `\n the ${joinAnd(missingHeaders)} ${\n missingHeaders.length > 1 ? 'headers were' : 'header was'\n } required but missing`,\n sendCredentials &&\n allowCredentials &&\n allowCredentials !== 'true' &&\n `\n credentials were sent, but the Access-Control-Allow-Credentials header was\n '${allowCredentials}' instead of 'true'`,\n allowedOrigin &&\n allowedOrigin !== sourceOrigin &&\n (allowedOrigin !== '*' || sendCredentials) &&\n `\n the Access-Control-Allow-Origin header was '${allowedOrigin}' instead of\n '${sourceOrigin}'${\n sendCredentials && allowedOrigin === '*' ? \" (* doesn't match all origins when you send credentials)\" : ''\n }`,\n ].filter(r => !!r);\n\n return (\n \n \n \n \n \n \n The request was sent, but the headers returned by the server don't allow you to read the response.\n \n \n \n In practice, your request will fail with an error, and the browser will print an explanation to the console\n explaining why the server's headers weren't OK. You won't be able to examine the response's\n status code, headers or body.\n \n This failed because {joinAnd(failureReasons)}.\n \n To avoid this and ready the response, you'll need to make the server send the correct CORS headers, or use\n a CORS proxy.\n \n \n If you're actually not interested in the response, you can set mode: no-cors on\n your request, to intentionally receive an opaque response. This is useful for{' '}\n a few niche use cases in caching & cross-origin\n resource loading.\n \n \n );\n};\n\ninterface ServerAllowsCorsRequestProps extends Pick {\n sourceOrigin?: string;\n responseHeaders: any;\n sendCredentials: boolean;\n}\n\nexport const ServerAllowsCorsRequest = ({\n sourceOrigin,\n responseHeaders,\n sendCredentials,\n onNext,\n}: ServerAllowsCorsRequestProps) => {\n const exposedHeadersHeader = getHeaderValues(responseHeaders, 'access-control-expose-headers');\n const timingInfo = getHeaderValue(responseHeaders, 'timing-allow-origin');\n\n const corsSafelistedHeaders = (\n <>\n and all{' '}\n \n CORS-safelisted headers\n \n \n );\n\n const hasHeaderWildcard = exposedHeadersHeader.includes('*');\n const explicitlyAllowedHeaders = exposedHeadersHeader.filter((h: string) => h !== '*');\n\n const credsWithWildcardWarning =\n hasHeaderWildcard && sendCredentials ? \" (* doesn't match all headers if you send credentials)\" : '';\n const exposedHeaders =\n hasHeaderWildcard && !sendCredentials ? (\n 'and all received headers'\n ) : explicitlyAllowedHeaders.length ? (\n <>\n the explicitly exposed headers ({joinAnd(explicitlyAllowedHeaders)}) {corsSafelistedHeaders}\n \n ) : (\n corsSafelistedHeaders\n );\n\n const varyOnOrigin =\n getHeaderValues(responseHeaders, 'vary').some((v: string) => v.toLowerCase() === 'origin') ||\n getHeaderValue(responseHeaders, 'vary') === '*';\n\n const uselessSetCookie = getHeaderValue(responseHeaders, 'set-cookie') !== undefined && !sendCredentials;\n\n return (\n \n \n \n \n \n The request was sent, and the server's CORS headers let you read the response.\n \n \n You'll be able to examine the response's status code, its body, {exposedHeaders}\n {credsWithWildcardWarning}.\n \n \n {timingInfo === '*' || timingInfo === sourceOrigin ? (\n <>\n You'll also be able to use the{' '}\n resource timing API{' '}\n to examine the detailed performance of this request.\n \n ) : (\n <>\n You won't however be able to use the{' '}\n resource timing API{' '}\n to examine the detailed performance of this request, as it doesn't include a matching\n Timing-Allow-Origin header.\n \n )}\n \n {uselessSetCookie && (\n \n \n This response sets a cookie that won't be used\n \n . Set-Cookie headers in responses are ignored, unless the initial request includes browser credentials.\n \n )}\n {!varyOnOrigin && someHeaderValues(responseHeaders, (v: string) => v.toLowerCase() === sourceOrigin) && (\n \n \n This result may be cached incorrectly\n \n . Your response headers reference the page origin from the request, but they don't include `Origin` in a{' '}\n Vary header. This response\n might be cached and then used by a CORS request from a different origin, where it will unexpectedly fail.\n \n )}\n \n \n \n );\n};\n\nexport const ShowCode = ({ code }: { code: any }) => {\n return (\n \n \n \n \n );\n};\n\nexport const PreflightRequest = ({ onNext }: Pick) => (\n \n Preflight required\n \n \n \n \n This is not a{' '}\n \n simple cross-origin request\n \n , so the browser will send a preflight request to the server automatically, to check its CORS\n configuration before it sends the real request.\n \n \n Preflight requests use the HTTP OPTIONS method and include Access-Control-Request headers to ask the server what\n kind of CORS requests are allowed. The server's response tells the browser whether your main request can be\n sent.\n \n \n \n);\n\n// start\n\ninterface PreflightResponseQuestionProps extends QuestionProps {\n targetUrl: string;\n sourceOrigin?: string;\n unsafeHeaders: any;\n method: string;\n isPreflightSuccessful: boolean;\n sendCredentials: boolean;\n}\n\nexport const PreflightResponseQuestion = observer(\n ({\n value,\n onNext,\n targetUrl,\n sourceOrigin,\n unsafeHeaders,\n method,\n onChange,\n isPreflightSuccessful,\n sendCredentials,\n }: PreflightResponseQuestionProps) => {\n const preflightHeaders = value;\n const cacheDuration = parseInt(getHeaderValue(preflightHeaders, 'access-control-max-age'), 10);\n\n return (\n \n \n \n The browser will send an OPTIONS request to {targetUrl}, with{' '}\n {joinAnd(\n [`an Origin header (${sourceOrigin})`, `an Access-Control-Request-Method header (${method})`].concat(\n unsafeHeaders.length ? [`an Access-Control-Request-Headers header (${unsafeHeaders.join(', ')})`] : [],\n ),\n )}\n .\n \n What headers will the server return in its response?\n {\n if (e.target.checked) {\n setHeader(preflightHeaders, 'Access-Control-Allow-Origin', sourceOrigin);\n setHeader(preflightHeaders, 'Access-Control-Allow-Methods', method);\n if (unsafeHeaders.length) {\n setHeader(preflightHeaders, 'Access-Control-Allow-Headers', unsafeHeaders.join(', '));\n }\n if (sendCredentials) {\n setHeader(preflightHeaders, 'Access-Control-Allow-Credentials', 'true');\n }\n } else {\n deleteHeader(preflightHeaders, 'Access-Control-Allow-Origin');\n deleteHeader(preflightHeaders, 'Access-Control-Allow-Methods');\n deleteHeader(preflightHeaders, 'Access-Control-Allow-Headers');\n deleteHeader(preflightHeaders, 'Access-Control-Allow-Credentials');\n }\n onChange(preflightHeaders);\n }}\n label=\"Allow this request\"\n />\n 0}\n onChange={e => {\n if (e.target.checked) {\n setHeader(preflightHeaders, 'Access-Control-Max-Age', '86400');\n } else {\n deleteHeader(preflightHeaders, 'Access-Control-Max-Age');\n }\n onChange(preflightHeaders);\n }}\n label=\"Cache this result, to speed up future preflight checks\"\n />\n \n \n \n \n );\n },\n);\n\ninterface ServerRejectsPreflightRequestProps {\n sourceOrigin?: string;\n preflightResponseHeaders: any;\n originAllowed?: boolean;\n methodAllowed: boolean;\n headersAllowed: boolean;\n credentialsAllowed: boolean;\n sendCredentials: boolean;\n unsafeHeaders: any;\n method: string;\n}\n\nexport const ServerRejectsPreflightRequest = ({\n preflightResponseHeaders,\n sourceOrigin,\n originAllowed,\n methodAllowed,\n headersAllowed,\n credentialsAllowed,\n sendCredentials,\n unsafeHeaders,\n method,\n}: ServerRejectsPreflightRequestProps) => {\n const preflightHeaders = preflightResponseHeaders;\n\n const incorrectHeaders = [\n !originAllowed && 'Origin',\n !methodAllowed && 'Methods',\n !headersAllowed && 'Headers',\n !credentialsAllowed && 'Credentials',\n ].filter(v => !!v);\n\n const [missingHeaders, incompleteHeaders] = partition(\n incorrectHeaders,\n h => !getHeaderValue(preflightHeaders, `Access-Control-Allow-${h}`),\n );\n\n const invalidWildcards = sendCredentials\n ? [\n !originAllowed && getHeaderValue(preflightHeaders, 'Access-Control-Allow-Origin') === '*' && 'Origin',\n !methodAllowed && getHeaderValues(preflightHeaders, 'Access-Control-Allow-Methods').includes('*') && 'Methods',\n !headersAllowed && getHeaderValues(preflightHeaders, 'Access-Control-Allow-Headers').includes('*') && 'Headers',\n ].filter(h => !!h)\n : [];\n\n // Authorization must be included explicitly - * is never sufficient.\n const allowedHeaders = getHeaderValues(preflightHeaders, 'access-control-allow-headers').map((h: string) =>\n h.toLowerCase(),\n );\n const wildcardWithAuthorization =\n !sendCredentials && // Irrelevant if * is invalid anyway\n unsafeHeaders.map((h: string) => h.toLowerCase()).includes('authorization') &&\n !allowedHeaders.includes('authorization') &&\n allowedHeaders.includes('*');\n\n return (\n \n \n \n \n \n The server's response to the preflight request doesn't allow the CORS request you want to send, so the\n browser won't send it.\n \n \n In practice, your request will fail with a generic error, and the browser will print an\n explanation to the console explaining why the preflight response wasn't OK.\n \n \n This failed because{' '}\n {joinAnd(\n [\n missingHeaders.length &&\n `the ${joinAnd(missingHeaders.map(h => `Access-Control-Allow-${h}`))} header${\n missingHeaders.length > 1 ? 's are' : ' is'\n } required but missing`,\n ...incompleteHeaders.map(\n incompleteHeader =>\n `the Access-Control-Allow-${incompleteHeader} header (${getHeaderValue(\n preflightHeaders,\n `Access-Control-Allow-${incompleteHeader}`,\n )}) ${\n incompleteHeader === 'Origin'\n ? `does not match the request origin (${sourceOrigin})`\n : incompleteHeader === 'Methods'\n ? `does not include the request method (${method})`\n : incompleteHeader === 'Headers'\n ? `does not match all unsafe headers (${joinAnd(unsafeHeaders)})`\n : // Credentials\n `is not 'true' and the request would include credentials`\n }`,\n ),\n ].filter(v => !!v),\n )}\n .\n \n {wildcardWithAuthorization && (\n \n Note that the * wildcard for Access-Control-Allow-Headers never matches Authorization headers\n . The Authorization header needs to be listed explicitly.\n \n )}\n {invalidWildcards.length > 0 && (\n \n \n Remember that the {joinAnd(invalidWildcards.map(h => `Access-Control-Allow-${h}`))}{' '}\n {invalidWildcards.length > 1 ? 'headers ignore' : 'header ignores'} * wildcards when credentials are\n enabled.\n \n \n )}\n \n To avoid this, you'll need to either make the server send the correct preflight headers, or make your\n request a{' '}\n simple request that\n doesn't require an initial preflight.\n \n \n );\n};\n\nexport const ServerAllowsPreflightRequest = ({ onNext }: Pick) => (\n \n Preflight request successful\n \n The server's response to the preflight request says the browser is allowed to send CORS requests like this,\n so the browser now sends your request.\n \n \n However, this doesn't mean you can definitely read the response. That depends on the headers\n the server returns with the final response...\n \n \n \n);\n\nconst TryHttpToolkit = () => {\n return (\n \n Want to see & test this for real? Try out HTTP Toolkit.\n \n );\n};\n","// @ts-nocheck\nimport { isEmpty, mapValues, keyBy } from 'lodash-es';\nimport { makeAutoObservable } from 'mobx';\n\nimport { getHeaderValue, getHeaderValues, getOrigin } from '../utils';\n\nconst SAFE_HEADERS = ['accept', 'accept-language', 'content-language', 'content-type'];\n\nconst SAFE_CONTENT_TYPES = ['application/x-www-form-urlencoded', 'multipart/form-data', 'text/plain'];\n\nfunction isSafeContentType(contentType: string) {\n return (\n !UNSAFE_HEADER_BYTES.some(b => contentType.includes(b)) &&\n SAFE_CONTENT_TYPES.includes(contentType.split(';')[0].toLowerCase())\n );\n}\n\nconst UNSAFE_HEADER_BYTES = '\"():<>?@[\\\\]{}'.split('');\n\nexport class WillItCorsStore {\n sourceUrl = '';\n targetUrl = '';\n method = '';\n\n sendCredentials = false;\n useStreaming = false;\n requestHeaders = []; // List of key value pairs\n\n preflightResponseHeaders = []; // List of key value pairs\n serverResponseHeaders = []; // List of key value pairs\n\n constructor() {\n makeAutoObservable(this);\n }\n\n setSourceUrl(url) {\n this.sourceUrl = url;\n }\n\n setTargetUrl(url) {\n this.targetUrl = url;\n }\n\n setMethod(method) {\n this.method = method;\n }\n\n setCredentials(credentials) {\n this.sendCredentials = credentials;\n }\n\n setUseStreaming(useStreaming) {\n this.useStreaming = useStreaming;\n }\n\n setRequestHeaders(requestHeaders) {\n this.requestHeaders = requestHeaders;\n }\n\n setServerResponseHeaders(serverResponseHeaders) {\n this.serverResponseHeaders = serverResponseHeaders;\n }\n\n setPreflightResponseHeaders(preflightResponseHeaders) {\n this.preflightResponseHeaders = preflightResponseHeaders;\n }\n\n get sourceOrigin() {\n try {\n return getOrigin(this.sourceUrl);\n } catch (e) {\n return undefined;\n }\n }\n\n get targetOrigin() {\n try {\n return getOrigin(this.targetUrl);\n } catch (e) {\n return undefined;\n }\n }\n\n get contentType() {\n return getHeaderValue(this.requestHeaders, 'Content-Type');\n }\n\n get isCorsRequest() {\n if (!this.sourceOrigin || !this.targetOrigin) return undefined;\n return this.sourceOrigin !== this.targetOrigin;\n }\n\n get isMixedContentRequest() {\n if (!this.sourceOrigin || !this.targetOrigin) return undefined;\n\n return (\n this.sourceOrigin.startsWith('https://') &&\n this.targetOrigin.startsWith('http://') &&\n // Most browsers (though admittedly, not all) treat localhost as secure\n !this.targetOrigin.match(/http:\\/\\/localhost(:|$)/) &&\n !this.targetOrigin.match(/http:\\/\\/127\\.0\\.0\\.1(:|$)/)\n );\n }\n\n get unsafeHeaders() {\n return this.requestHeaders\n .filter(([headerName, headerValue]) => {\n const name = headerName.toLowerCase();\n\n if (!SAFE_HEADERS.includes(name)) return true;\n\n if (name === 'accept') return UNSAFE_HEADER_BYTES.some((b: string) => headerValue.includes(b));\n if (name === 'accept-language' || name === 'content-language') {\n return !/^[0-9A-Za-z *,.;=\\-]+$/.test(headerValue);\n }\n\n if (name === 'content-type') {\n // Can't include unsafe bytes, must be a safe content type (ignoring params)\n return !isSafeContentType(headerValue);\n }\n })\n .map(([headerName]) => headerName);\n }\n\n get isSendingUnsafeHeaders() {\n return this.unsafeHeaders.length > 0;\n }\n\n get isSimpleCorsRequest() {\n if (this.isCorsRequest === undefined || !this.method) return undefined;\n\n return (\n this.isCorsRequest &&\n !this.isSendingUnsafeHeaders &&\n !this.useStreaming &&\n ['HEAD', 'GET', 'POST'].includes(this.method)\n );\n }\n\n get doesPreflightResponseAllowOrigin() {\n if (this.sourceOrigin === undefined) return undefined;\n const allowedOrigin = getHeaderValue(this.preflightResponseHeaders, 'access-control-allow-origin');\n\n return this.sendCredentials\n ? allowedOrigin === this.sourceOrigin\n : allowedOrigin === '*' || allowedOrigin === this.sourceOrigin;\n }\n\n get doesPreflightResponseAllowMethod() {\n if (!this.method) return undefined;\n const allowedMethods = getHeaderValues(this.preflightResponseHeaders, 'access-control-allow-methods');\n\n return this.sendCredentials\n ? allowedMethods.includes(this.method)\n : allowedMethods === '*' || allowedMethods.includes(this.method);\n }\n\n get doesPreflightResponseAllowHeaders() {\n const allowedHeaders = getHeaderValues(this.preflightResponseHeaders, 'access-control-allow-headers').map(h =>\n h.toLowerCase(),\n );\n\n const includesAllUnsafeHeaders = !this.unsafeHeaders.some((h: string) => !allowedHeaders.includes(h.toLowerCase()));\n\n // Authorization must be included explicitly - * isn't sufficient.\n const unsafeAuthorization =\n !allowedHeaders.includes('authorization') &&\n this.unsafeHeaders.map((h: string) => h.toLowerCase()).includes('authorization');\n\n return (\n !unsafeAuthorization &&\n (this.sendCredentials ? includesAllUnsafeHeaders : allowedHeaders.includes('*') || includesAllUnsafeHeaders)\n );\n }\n\n // Slight misnomer: really does it allow the credentials *we wanted to send* (i.e. always true if we send nothing)\n get doesPreflightResponseAllowCredentials() {\n return (\n !this.sendCredentials ||\n getHeaderValue(this.preflightResponseHeaders, 'access-control-allow-credentials') === 'true'\n );\n }\n\n get isPreflightSuccessful() {\n return (\n this.doesPreflightResponseAllowOrigin &&\n this.doesPreflightResponseAllowMethod &&\n this.doesPreflightResponseAllowHeaders &&\n this.doesPreflightResponseAllowCredentials\n );\n }\n\n get isServerResponseReadable() {\n if (this.sourceOrigin === undefined) return undefined;\n const allowedOrigin = getHeaderValue(this.serverResponseHeaders, 'access-control-allow-origin');\n const credentialsAllowed =\n getHeaderValue(this.serverResponseHeaders, 'access-control-allow-credentials') === 'true';\n\n return this.sendCredentials\n ? credentialsAllowed && allowedOrigin === this.sourceOrigin\n : allowedOrigin === '*' || allowedOrigin === this.sourceOrigin;\n }\n\n get exampleCode() {\n return `\\\n// In your script on ${this.sourceUrl}\nfetch(\"${this.targetUrl}\", ${JSON.stringify(\n Object.assign(\n { method: this.method },\n this.sendCredentials ? { credentials: 'include' } : {},\n !isEmpty(this.requestHeaders)\n ? {\n headers: mapValues(\n keyBy(this.requestHeaders, ([headerName]) => headerName),\n ([, headerValue]) => headerValue,\n ),\n }\n : {},\n ),\n null,\n 4,\n )});\n\n/*${\n !this.isSimpleCorsRequest\n ? `\nThe server will receive an OPTIONS request to ${this.targetUrl}, including headers:\n\nOrigin: ${this.sourceOrigin}\nAccess-Control-Request-Method: ${this.method}${\n this.unsafeHeaders.length\n ? `\nAccess-Control-Request-Headers: ${this.unsafeHeaders.join(', ')}`\n : ''\n }\n\nThe server's response headers should include:\n\n${this.preflightResponseHeaders.map(([headerName, headerValue]) => `${headerName}: ${headerValue}`).join('\\n')}\n\nNext, the `\n : `\nThe `\n }server will receive your ${this.method} request to ${this.targetUrl}, with an 'Origin: ${this.sourceOrigin}' header set by the browser.\n\nThe server's response headers should include:\n\n${this.serverResponseHeaders.map(([headerName, headerValue]) => `${headerName}: ${headerValue}`).join('\\n')}\n*/\n`;\n }\n}\n","'use client';\n\nimport { observer } from 'mobx-react-lite';\nimport { useRouter } from 'next/navigation';\n\nimport {\n ContentTypeQuestion,\n MethodQuestion,\n MixedContentResult,\n NotCorsResult,\n PreflightRequest,\n PreflightResponseQuestion,\n RequestExtrasQuestion,\n ServerAllowsCorsRequest,\n ServerAllowsPreflightRequest,\n ServerRejectsCorsRequest,\n ServerRejectsPreflightRequest,\n ServerResponseQuestion,\n ShowCode,\n SimpleCorsRequest,\n SourceUrlQuestion,\n TargetUrlQuestion,\n} from './components';\nimport type { WillItCorsSteps } from '../../data';\nimport { WillItCorsStore } from '../../store';\nimport { deleteHeader, setHeader } from '../../utils';\n\nconst steps = new WillItCorsStore();\n\nexport const Steps = observer(({ currentStep }: { currentStep: WillItCorsSteps }) => {\n const router = useRouter();\n\n // If you end up directly on a step without having completed the path this session (e.g.\n // if you refresh the page or navigate there directly), we redirect you to the root.\n if (currentStep !== 'source-url' && !steps.sourceUrl) {\n router.push('/will-it-cors/');\n return null;\n }\n\n switch (currentStep) {\n case 'source-url':\n return (\n {\n steps.setSourceUrl(newValue);\n }}\n onNext={() => router.push('/will-it-cors/target-url/')}\n />\n );\n\n case 'target-url':\n return (\n {\n steps.setTargetUrl(newValue);\n }}\n onNext={() => {\n if (!steps.isCorsRequest) {\n router.push('/will-it-cors/not-cors/');\n } else if (steps.isMixedContentRequest) {\n router.push('/will-it-cors/mixed-content/');\n } else {\n router.push('/will-it-cors/method/');\n }\n }}\n />\n );\n\n case 'not-cors':\n return ;\n\n case 'mixed-content':\n return (\n \n );\n\n case 'method':\n return (\n {\n steps.setMethod(newValue);\n }}\n onNext={() => router.push('/will-it-cors/request-extras/')}\n sourceOrigin={steps.sourceOrigin ?? 'https://'}\n targetOrigin={steps.targetOrigin ?? 'http://'}\n />\n );\n\n case 'request-extras':\n return (\n {\n steps.setCredentials(newValue);\n }}\n useStreaming={steps.useStreaming}\n onUseStreaming={newValue => {\n steps.setUseStreaming(newValue);\n }}\n headers={steps.requestHeaders}\n onChangeHeaders={newValue => {\n steps.setRequestHeaders(newValue);\n }}\n onNext={() => {\n if (steps.method === 'POST' && steps.contentType === undefined) {\n router.push('/will-it-cors/content-type/');\n } else if (steps.isSimpleCorsRequest) {\n router.push('/will-it-cors/simple-cors/');\n } else {\n router.push('/will-it-cors/preflight/');\n }\n }}\n />\n );\n\n case 'content-type':\n return (\n {\n if (newValue) {\n setHeader(steps.requestHeaders, 'Content-Type', newValue);\n } else {\n deleteHeader(steps.requestHeaders, 'Content-Type');\n }\n }}\n onNext={() => {\n if (steps.isSimpleCorsRequest) {\n router.push('/will-it-cors/simple-cors/');\n } else {\n router.push('/will-it-cors/preflight/');\n }\n }}\n />\n );\n\n case 'simple-cors':\n return router.push('/will-it-cors/server-response/')} />;\n\n case 'server-response':\n return (\n {\n steps.setServerResponseHeaders(newValue);\n }}\n onNext={() => {\n if (steps.isServerResponseReadable) {\n router.push('/will-it-cors/request-success/');\n } else {\n router.push('/will-it-cors/request-failure/');\n }\n }}\n />\n );\n\n case 'request-failure':\n return (\n \n );\n\n case 'request-success':\n return (\n router.push('/will-it-cors/show-code/')}\n />\n );\n\n case 'show-code':\n return ;\n\n case 'preflight':\n return router.push('/will-it-cors/preflight-response/')} />;\n\n case 'preflight-success':\n return router.push('/will-it-cors/server-response/')} />;\n\n case 'preflight-response':\n return (\n {\n steps.setPreflightResponseHeaders(newValue);\n }}\n onNext={() => {\n if (steps.isPreflightSuccessful) {\n router.push('/will-it-cors/preflight-success/');\n } else {\n router.push('/will-it-cors/preflight-failure/');\n }\n }}\n />\n );\n\n case 'preflight-failure':\n return (\n \n );\n\n default:\n return null;\n }\n});\n","'use client';\n\nimport { screens, styled } from '@/styles';\n\nexport const StyledWillItCorsWrapper = styled.section`\n box-shadow: ${({ theme }) => theme.shadow.hero};\n padding: 32px 20px;\n\n @media (min-width: ${screens['md']}) {\n position: relative;\n padding-top: 32px;\n padding-bottom: 64px;\n text-align: center;\n justify-content: center;\n\n background:\n no-repeat url('/images/backgrounds/hero-lines.svg'),\n var(--background-dots);\n background-position: top -35px center;\n\n &::before {\n content: '';\n position: absolute;\n inset: 0;\n pointer-events: none;\n background-image: radial-gradient(ellipse at center, transparent 60%, ${({ theme }) => theme.colors.inkGrey});\n }\n }\n`;\n\nexport const StyledWillItCorsContainer = styled.div`\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n max-width: 770px;\n text-align: center;\n\n background: radial-gradient(rgba(0,0,0,0.3), rgba(0,0,0,0.3) 40%, transparent 75%);\n text-shadow: var(--ink-grey) 0 0 20px, var(--ink-grey) 1px 1px 1px;\n\n & a {\n color: ${({ theme }) => theme.colors.electricLightBlue};\n text-decoration: underline;\n }\n`;\n","'use client';\n\nimport type { StyledHeadingProps } from './heading.types';\n\nimport { styled } from '@/styles';\n\nconst lineHeightMap = {\n xl: 1.2,\n l: 1.2,\n m: 1.3,\n s: 1.3,\n xs: 1.3,\n};\n\nexport const StyledHeading = styled.h1`\n font-size: ${({ theme, fontSize }) => theme.fontSizes.heading.mobile[fontSize || 'xl']};\n color: ${({ theme, color }) => theme.colors.text[color || 'lightGrey']};\n font-weight: ${({ theme, fontWeight }) => theme.fontWeight[fontWeight || 'normal']};\n line-height: ${({ fontSize }) => lineHeightMap[fontSize || 'xl']};\n text-align: ${({ $textAlign: align }) => align || 'unset'};\n\n ${({ color, theme }) => color === 'textGradient' && theme.colors.text.textGradient}\n\n @media (min-width: ${({ theme }) => theme.screens.xl}) {\n font-size: ${({ theme, fontSize }) => theme.fontSizes.heading.desktop[fontSize || 'xl'].toString()};\n }\n`;\n","import { StyledHeading } from './heading.styles';\nimport type { HeadingProps } from './heading.types';\n\nexport const Heading = ({\n as = 'h1',\n id,\n children,\n className,\n color,\n fontSize = 'xl',\n fontWeight,\n textAlign,\n ...props\n}: Component) => {\n return (\n \n {children}\n \n );\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 { screens, styled } from '@/styles';\n\nexport const StyledLandingLayoutWrapper = styled.div`\n min-height: fit-content;\n height: 100vh;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n overflow-y: auto;\n\n & main {\n overflow: visible;\n }\n\n @media (min-width: ${screens['xl']}) {\n & main {\n flex: 1; /* Allow the main content to grow and take up remaining space */\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n }\n\n & section:first-of-type {\n width: 100%;\n height: 100%;\n display: flex;\n }\n }\n`;\n","'use client';\n\nimport { Text } from '@/components/elements/text';\nimport { styled } from '@/styles';\n\nexport const StyledBlockCodeWrapper = styled.div`\n border-radius: 16px;\n box-shadow: 0 0 0 1px ${({ theme }) => theme.colors.button.border};\n background-color: ${({ theme }) => theme.colors.darkGrey};\n overflow: hidden;\n margin-top: 24px;\n margin-bottom: 24px;\n`;\n\nexport const StyledBlockCodeTitleWrapper = styled.div`\n padding: 16px;\n box-shadow: 0 0 0 1px ${({ theme }) => theme.colors.button.border};\n`;\n\nexport const StyledBlockCodeContent = styled.div`\n & pre {\n display: block;\n width: 100%;\n padding: 16px;\n margin: 0;\n background-color: transparent;\n\n & code {\n color: ${({ theme }) => theme.colors.lightGrey};\n font-size: 13px;\n line-height: 19.5px;\n font-family: var(--font-code) !important;\n text-wrap: balance;\n }\n }\n`;\n\nexport const StyledInlineCode = styled(Text)`\n &&& {\n color: ${({ theme }) => theme.colors.lightGrey};\n background: ${({ theme }) => theme.colors.darkGrey};\n box-shadow: 0 0 0 1px ${({ theme }) => theme.colors.button.border};\n padding: 0 6px;\n border-radius: 4px;\n margin: 0 4px;\n font-size: 13px;\n line-height: 19.5px;\n font-family: var(--font-code) !important;\n display: inline-flex;\n line-height: normal;\n text-wrap: balance;\n }\n`;\n","'use client';\n\nimport * as Prism from 'prismjs';\nimport 'prismjs/components/prism-bash';\nimport 'prismjs/components/prism-ruby';\nimport 'prismjs/components/prism-java';\nimport 'prismjs/components/prism-typescript';\nimport 'prismjs/components/prism-python';\nimport 'prismjs/components/prism-docker';\nimport 'prismjs/components/prism-go';\nimport 'prismjs/components/prism-dart';\nimport 'prismjs/components/prism-yaml';\nimport 'prismjs/themes/prism-tomorrow.css';\nimport React, { useEffect } from 'react';\n\nimport type { BlockCodeProps } from '../block-code.types';\n\nexport const Code = ({ children, language, title }: Component>) => {\n const codeRef = React.createRef();\n\n useEffect(() => {\n async function highlight() {\n if (codeRef.current) {\n Prism.highlightElement(codeRef.current as Element);\n }\n }\n highlight();\n }, []);\n\n return (\n
\n      \n        {title}\n      \n      \n        {children}\n      \n    
\n );\n};\n"],"names":["Promise","resolve","then","__webpack_require__","t","bind","StyledBreadcrumbContainer","styled","nav","_templateObject","StyledBreadcrumbItemWrapper","div","_templateObject4","$state","param","css","HEADER_NAME_PATTERN","clickOnEnter","e","target","currentTarget","key","dispatchEvent","MouseEvent","bubbles","HeadersContainer","screens","lg","HeaderDeleteButton","button","attrs","type","_templateObject1","validateClientHeaderNameChange","event","headerName","value","isForbiddenBrowserHeader","rawHeaderName","toLowerCase","startsWith","includes","setCustomValidity","concat","EditableHeaders","props","headers","onChange","autoFocus","onlyClientHeaders","focused","setFocused","React","jsx_runtime","jsx","Observer","flatMap","i","Input","required","pattern","spellCheck","action","reportValidity","onClick","splice","onKeyPress","SquareIcon","$size","icon","Trash","placeholder","push","ref","elem","focus","length","getOrigin","url","URL","origin","getHeaderPair","find","headerKey","getHeaderValue","getHeaderValues","separator","split","map","v","trim","filter","setHeader","headerPair","deleteHeader","remove","someHeaderValues","predicate","some","joinAnd","vals","initialSep","finalSep","slice","join","InlineCode","children","StyledInlineCode","fontSize","color","forwardedAs","className","dmCodeFont","BlockCode","title","content","language","jsxs","StyledBlockCodeWrapper","StyledBlockCodeTitleWrapper","Text","fontWeight","StyledBlockCodeContent","Code","StyledInputWrapper","checkbox_styles_templateObject","StyledInput","input","checkbox_styles_templateObject1","theme","fontSizes","text","s","$hasError","colors","cinnarbarRed","lightGrey","inkGrey","electricLightBlue","inkBlack","STyledLabel","label","_templateObject2","m","bold","darkGrey","Checkbox","forwardRef","id","name","htmlFor","displayName","Question","onNext","form","onSubmit","preventDefault","checkValidity","SourceUrlQuestion","observer","Stack","Heading","Button","$isFluid","TargetUrlQuestion","NotCorsResult","CheckCircle","aria-label","weight","size","strong","Link","href","MixedContentResult","sourceOrigin","targetOrigin","XCircle","MethodQuestion","fontStyle","method","toUpperCase","RequestExtrasQuestion","sendCredentials","onSendCredentials","useStreaming","onUseStreaming","onChangeHeaders","showHeaders","setShowHeaders","useState","isEmpty","checked","shouldShowHeaders","ContentTypeQuestion","SimpleCorsRequest","textAlign","ShippingFast","width","ServerResponseQuestion","isServerResponseReadable","undefined","ServerRejectsCorsRequest","serverResponseHeaders","allowedOrigin","allowCredentials","missingHeaders","h","failureReasons","r","ServerAllowsCorsRequest","responseHeaders","exposedHeadersHeader","timingInfo","corsSafelistedHeaders","Fragment","hasHeaderWildcard","explicitlyAllowedHeaders","credsWithWildcardWarning","exposedHeaders","varyOnOrigin","uselessSetCookie","as","TryHttpToolkit","ShowCode","code","PreflightRequest","PaperPlaneTilt","PreflightResponseQuestion","targetUrl","unsafeHeaders","isPreflightSuccessful","cacheDuration","parseInt","ServerRejectsPreflightRequest","preflightResponseHeaders","originAllowed","methodAllowed","headersAllowed","credentialsAllowed","incorrectHeaders","incompleteHeaders","partition","invalidWildcards","allowedHeaders","wildcardWithAuthorization","incompleteHeader","ServerAllowsPreflightRequest","SAFE_HEADERS","SAFE_CONTENT_TYPES","UNSAFE_HEADER_BYTES","WillItCorsStore","setSourceUrl","sourceUrl","setTargetUrl","setMethod","setCredentials","credentials","setUseStreaming","setRequestHeaders","requestHeaders","setServerResponseHeaders","setPreflightResponseHeaders","contentType","isCorsRequest","isMixedContentRequest","match","headerValue","b","test","isSendingUnsafeHeaders","isSimpleCorsRequest","doesPreflightResponseAllowOrigin","doesPreflightResponseAllowMethod","allowedMethods","doesPreflightResponseAllowHeaders","includesAllUnsafeHeaders","doesPreflightResponseAllowCredentials","exampleCode","JSON","stringify","Object","assign","mapValues","keyBy","constructor","makeAutoObservable","steps","Steps","currentStep","router","useRouter","newValue","StyledWillItCorsWrapper","section","shadow","hero","StyledWillItCorsContainer","lineHeightMap","xl","l","xs","StyledHeading","h1","heading","mobile","$textAlign","align","textGradient","desktop","toString","react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__","data-heading","Icon","$variant","StyledSquareIcon","SquareIconSizes","mini","small","medium","large","xLarge","_templateObject5","border","electricBlue","white","StyledLandingLayoutWrapper","codeRef","useEffect","highlight","current","Prism","pre","aria-labelledby","tabIndex","span"],"sourceRoot":""}