Skip to content

Commit c6131c2

Browse files
aduh95MattIPv4ovflowd
authored
feat: redirect Corepack documentation page (#388)
Co-authored-by: Matt Cowley <[email protected]> Co-authored-by: Claudio W. <[email protected]> Co-authored-by: Claudio W. <[email protected]>
1 parent b3345fb commit c6131c2

2 files changed

Lines changed: 22 additions & 0 deletions

File tree

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
import type { Middleware } from './middleware';
2+
3+
/**
4+
* Redirects a path to another URL
5+
*/
6+
export class RedirectionMiddleware implements Middleware {
7+
targetURL: string;
8+
9+
constructor(targetURL: string) {
10+
this.targetURL = targetURL;
11+
}
12+
13+
async handle(): Promise<Response> {
14+
return Response.redirect(this.targetURL, 308);
15+
}
16+
}

src/routes/index.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import { NotFoundMiddleware } from '../middleware/notFoundMiddleware';
55
import { OptionsMiddleware } from '../middleware/optionsMiddleware';
66
import { OriginMiddleware } from '../middleware/originMiddleware';
77
import { R2Middleware } from '../middleware/r2Middleware';
8+
import { RedirectionMiddleware } from '../middleware/redirectionMiddleware';
89
import { SubtitutionMiddleware } from '../middleware/subtituteMiddleware';
910
import type { Router } from './router';
1011

@@ -13,11 +14,16 @@ export function registerRoutes(router: Router): void {
1314
const cachedR2Middleware = cached(r2Middleware);
1415
const originMiddleware = new OriginMiddleware();
1516

17+
const corepackRedirectMiddleware = new RedirectionMiddleware('https://github.com/nodejs/corepack#readme');
18+
1619
router.options('*', [new OptionsMiddleware()]);
1720

1821
router.head('/metrics/?:filePath+', [r2Middleware, originMiddleware]);
1922
router.get('/metrics/?:filePath+', [cachedR2Middleware, originMiddleware]);
2023

24+
router.all('/api/corepack.html', [corepackRedirectMiddleware]);
25+
router.all('/docs/latest/api/corepack.html', [corepackRedirectMiddleware]);
26+
2127
// Register routes for latest releases (e.g. `/dist/latest/`)
2228
for (const branch in latestVersions) {
2329
const latestVersion = latestVersions[branch as keyof typeof latestVersions];

0 commit comments

Comments
 (0)