summaryrefslogtreecommitdiff
path: root/src/server/web/docs.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/web/docs.ts')
-rw-r--r--src/server/web/docs.ts35
1 files changed, 19 insertions, 16 deletions
diff --git a/src/server/web/docs.ts b/src/server/web/docs.ts
index 889532e17e..e65cc87b12 100644
--- a/src/server/web/docs.ts
+++ b/src/server/web/docs.ts
@@ -1,24 +1,27 @@
/**
- * Docs Server
+ * Docs
*/
-import * as path from 'path';
-import * as express from 'express';
+import ms = require('ms');
+import * as Router from 'koa-router';
+import * as send from 'koa-send';
-const docs = path.resolve(`${__dirname}/../../client/docs/`);
+const docs = `${__dirname}/../../client/docs/`;
-/**
- * Init app
- */
-const app = express();
-app.disable('x-powered-by');
+const router = new Router();
-app.use('/assets', express.static(`${docs}/assets`));
+router.get('/assets/*', async ctx => {
+ await send(ctx, ctx.params[0], {
+ root: docs + '/assets/',
+ maxage: ms('7 days'),
+ immutable: true
+ });
+});
-/**
- * Routing
- */
-app.get(/^\/([a-z_\-\/]+?)$/, (req, res) =>
- res.sendFile(`${docs}/${req.params[0]}.html`));
+router.get('*', async ctx => {
+ await send(ctx, `${ctx.params[0]}.html`, {
+ root: docs
+ });
+});
-module.exports = app;
+export default router;