From 52d325cdb1254cbcda68adbd9005b58e39ccd48a Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Thu, 31 Mar 2022 13:12:25 -0400 Subject: [PATCH] apply linking logic to inline code spans --- packages/kit/types/index.d.ts | 8 ++------ .../src/lib/docs/server/index.js | 19 ++++++++++++++++--- 2 files changed, 18 insertions(+), 9 deletions(-) diff --git a/packages/kit/types/index.d.ts b/packages/kit/types/index.d.ts index b07fbee694f5..368651665102 100644 --- a/packages/kit/types/index.d.ts +++ b/packages/kit/types/index.d.ts @@ -215,13 +215,9 @@ export interface ParamMatcher { } /** - * A function exported from an endpoint that corresponds to an - * HTTP verb (`get`, `put`, `patch`, etc) and handles requests with - * that method. Note that since 'delete' is a reserved word in - * JavaScript, delete handles are called `del` instead. + * A `(event: RequestEvent) => RequestHandlerOutput` function exported from an endpoint that corresponds to an HTTP verb (`get`, `put`, `patch`, etc) and handles requests with that method. Note that since 'delete' is a reserved word in JavaScript, delete handles are called `del` instead. * - * Note that you can use [generated types](/docs/types#generated-types) - * instead of manually specifying the `Params` generic argument. + * Note that you can use [generated types](/docs/types#generated-types) instead of manually specifying the `Params` generic argument. */ export interface RequestHandler< Params extends Record = Record, diff --git a/sites/kit.svelte.dev/src/lib/docs/server/index.js b/sites/kit.svelte.dev/src/lib/docs/server/index.js index bebba48ba659..e006a68f8ebb 100644 --- a/sites/kit.svelte.dev/src/lib/docs/server/index.js +++ b/sites/kit.svelte.dev/src/lib/docs/server/index.js @@ -171,6 +171,16 @@ export async function read_file(dir, file) { .join(''); } ); + }, + codespan: (text) => { + return ( + '' + + text.replace(type_regex, (match, prefix, name) => { + const link = `${name}`; + return `${prefix || ''}${link}`; + }) + + '' + ); } }); @@ -241,7 +251,8 @@ export function read_headings(dir) { file, // gross hack to accommodate FAQ slug: dir === 'faq' ? slug : undefined, - code: () => '' + code: () => '', + codespan: () => '' }); return { @@ -259,9 +270,10 @@ export function read_headings(dir) { * file: string; * slug: string; * code: (source: string, language: string, current: string) => string; + * codespan: (source: string) => string; * }} opts */ -function parse({ body, file, slug, code }) { +function parse({ body, file, slug, code, codespan }) { const headings = slug ? [slug] : []; const sections = []; @@ -307,7 +319,8 @@ function parse({ body, file, slug, code }) { return `${html}permalink`; }, - code: (source, language) => code(source, language, current) + code: (source, language) => code(source, language, current), + codespan }); return {