From f4d76f1eddd19470fb1fcff0ac27d7f72dbec26a Mon Sep 17 00:00:00 2001 From: psychobunny Date: Wed, 30 Sep 2020 10:00:28 -0400 Subject: [PATCH] feat: move service-worker.js into its own file --- public/src/service-worker.js | 11 +++++++++++ src/routes/meta.js | 5 +++-- 2 files changed, 14 insertions(+), 2 deletions(-) create mode 100644 public/src/service-worker.js diff --git a/public/src/service-worker.js b/public/src/service-worker.js new file mode 100644 index 0000000000..57a2243742 --- /dev/null +++ b/public/src/service-worker.js @@ -0,0 +1,11 @@ +'use strict'; + +self.addEventListener('fetch', function (event) { + event.respondWith(caches.match(event.request).then(function (response) { + if (!response) { + return fetch(event.request); + } + + return response; + })); +}); diff --git a/src/routes/meta.js b/src/routes/meta.js index bb47501fca..8fe887ffc8 100644 --- a/src/routes/meta.js +++ b/src/routes/meta.js @@ -1,5 +1,7 @@ 'use strict'; +const path = require('path'); + module.exports = function (app, middleware, controllers) { app.get('/sitemap.xml', controllers.sitemap.render); app.get('/sitemap/pages.xml', controllers.sitemap.getPages); @@ -10,7 +12,6 @@ module.exports = function (app, middleware, controllers) { app.get('/css/previews/:theme', controllers.admin.themes.get); app.get('/osd.xml', controllers.osd.handle); app.get('/service-worker.js', function (req, res) { - res.set('Content-Type', 'application/javascript'); - res.send('self.addEventListener(\'fetch\', event => { event.respondWith( caches.match(event.request).then(response => { if (!response) { return fetch(event.request); } return response; }) ) });'); + res.status(200).type('application/javascript').sendFile(path.join(__dirname, '../../public/src/service-worker.js')); }); };