From e33051910e83419cc669780bae8bd31b9bd7988a Mon Sep 17 00:00:00 2001 From: Kevin Whinnery Date: Fri, 15 Sep 2023 10:20:43 -0500 Subject: [PATCH] add additional redirects --- src-deno/redirects.ts | 76 ++++++++++++++++++++++++++++++++++++++++-- static/favicon.ico | Bin 0 -> 18102 bytes static/robots.txt | 4 +++ 3 files changed, 77 insertions(+), 3 deletions(-) create mode 100644 static/favicon.ico create mode 100644 static/robots.txt diff --git a/src-deno/redirects.ts b/src-deno/redirects.ts index d89834e1..e6a478f5 100644 --- a/src-deno/redirects.ts +++ b/src-deno/redirects.ts @@ -1,6 +1,11 @@ import { Hono } from "./deps.ts"; export default function configureRedirects(app: Hono) { + // helper to establish redirects + function r(from: string, to: string, status = 301) { + app.get(from, (c) => c.redirect(to, status)); + } + app.get("/", (c) => c.redirect("/runtime/manual")); app.get("/manual", (c) => c.redirect("/runtime/manual")); app.get("/runtime/manual/introduction", (c) => c.redirect("/runtime/manual")); @@ -78,10 +83,74 @@ export default function configureRedirects(app: Hono) { ); }); - //https://docs.deno.com/runtime/manual/advanced/typescript/ - app.get( + r( "/runtime/manual/advanced/typescript", - (c) => c.redirect("/runtime/manual/advanced/typescript/overview"), + "/runtime/manual/advanced/typescript/overview", + ); + + r( + "/runtime/manual/node/dnt", + "/runtime/manual/advanced/publishing/dnt", + ); + + r( + "/runtime/manual/typescript", + "/runtime/manual/advanced/typescript/overview", + ); + + r( + "/runtime/manual/typescript/overview", + "/runtime/manual/advanced/typescript/overview", + ); + + r( + "/runtime/manual/getting_started/typescript", + "/runtime/manual/advanced/typescript/overview", + ); + + r( + "/runtime/manual/typescript/typescript/faqs", + "/runtime/manual/advanced/typescript/faqs", + ); + + r( + "/runtime/manual/vscode_deno", + "/runtime/manual/references/vscode_deno", + ); + + r( + "/runtime/manual/advanced/publishing/0", + "/runtime/manual/advanced/publishing", + ); + + r( + "/runtime/manual/getting_started/webassembly", + "/runtime/manual/runtime/webassembly", + ); + + r( + "/runtime/manual/basics/permissionsDeno", + "/runtime/manual/basics/permissions", + ); + + r( + "/runtime/manual/contributing/style_guide", + "/runtime/manual/references/contributing/style_guide", + ); + + r( + "/runtime/manual/jsx_dom/linkedom", + "/runtime/manual/advanced/jsx_dom/linkedom", + ); + + r( + "/runtime/manual/npm_nodejs/compatibility_mode", + "/runtime/manual/node/compatibility", + ); + + r( + "/runtime/manual/runtime/navigator_api", + "/runtime/manual/runtime/web_platform_apis", ); app.get( @@ -100,6 +169,7 @@ export default function configureRedirects(app: Hono) { "discord-slash", "fresh", "simple-api", + "static-site", "tutorial-blog-fresh", "tutorial-dynamodb", "tutorial-faunadb", diff --git a/static/favicon.ico b/static/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..5f48a9e4e3953c8fdff28a4d6ac6ac702e84f037 GIT binary patch literal 18102 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 Gc>f1$%Wo_I literal 0 HcmV?d00001 diff --git a/static/robots.txt b/static/robots.txt new file mode 100644 index 00000000..c805a9de --- /dev/null +++ b/static/robots.txt @@ -0,0 +1,4 @@ +User-agent: * +Allow: / + +Sitemap: https://docs.deno.com/sitemap.xml \ No newline at end of file