import { OpenAPICopyButton } from './OpenAPICopyButton'; import { type OpenAPIUniversalContext, getOpenAPIClientContext } from './context'; import type { OpenAPIOperationData } from './types'; import { getDefaultServerURL } from './util/server'; /** * Display the path of an operation. */ export function OpenAPIPath(props: { data: OpenAPIOperationData; context: OpenAPIUniversalContext; /** Whether to show the server URL. * @default true */ withServer?: boolean; /** * Whether the path is copyable. * @default true */ canCopy?: boolean; }) { const { data, context, withServer = true, canCopy = true } = props; const { method, path, operation } = data; const server = getDefaultServerURL(data.servers); const formattedPath = formatPath(path); const element = (() => { return ( <> {withServer ? {server} : null} {formattedPath} > ); })(); return (